diff options
Diffstat (limited to 'target/linux/generic/patches-2.6.37/053-solos-vccs_release.patch')
-rw-r--r-- | target/linux/generic/patches-2.6.37/053-solos-vccs_release.patch | 100 |
1 files changed, 0 insertions, 100 deletions
diff --git a/target/linux/generic/patches-2.6.37/053-solos-vccs_release.patch b/target/linux/generic/patches-2.6.37/053-solos-vccs_release.patch deleted file mode 100644 index 409c43c19b..0000000000 --- a/target/linux/generic/patches-2.6.37/053-solos-vccs_release.patch +++ /dev/null @@ -1,100 +0,0 @@ -commit c031235b395433350f25943b7580a5e343c7b7b2 -Author: Philip A. Prindeville <philipp@redfish-solutions.com> -Date: Wed Mar 30 13:17:04 2011 +0000 - - atm/solos-pci: Don't flap VCs when carrier state changes - - Don't flap VCs when carrier state changes; higher-level protocols - can detect loss of connectivity and act accordingly. This is more - consistent with how other network interfaces work. - - We no longer use release_vccs() so we can delete it. - - release_vccs() was duplicated from net/atm/common.c; make the - corresponding function exported, since other code duplicates it - and could leverage it if it were public. - - Signed-off-by: Philip A. Prindeville <philipp@redfish-solutions.com> - Signed-off-by: David S. Miller <davem@davemloft.net> ---- - drivers/atm/solos-pci.c | 26 +------------------------- - include/linux/atmdev.h | 1 + - net/atm/common.c | 1 + - 3 files changed, 3 insertions(+), 25 deletions(-) - ---- a/drivers/atm/solos-pci.c -+++ b/drivers/atm/solos-pci.c -@@ -165,7 +165,6 @@ static uint32_t fpga_tx(struct solos_car - static irqreturn_t solos_irq(int irq, void *dev_id); - static struct atm_vcc* find_vcc(struct atm_dev *dev, short vpi, int vci); - static int list_vccs(int vci); --static void release_vccs(struct atm_dev *dev); - static int atm_init(struct solos_card *, struct device *); - static void atm_remove(struct solos_card *); - static int send_command(struct solos_card *card, int dev, const char *buf, size_t size); -@@ -384,7 +383,6 @@ static int process_status(struct solos_c - /* Anything but 'Showtime' is down */ - if (strcmp(state_str, "Showtime")) { - atm_dev_signal_change(card->atmdev[port], ATM_PHY_SIG_LOST); -- release_vccs(card->atmdev[port]); - dev_info(&card->dev->dev, "Port %d: %s\n", port, state_str); - return 0; - } -@@ -830,28 +828,6 @@ static int list_vccs(int vci) - return num_found; - } - --static void release_vccs(struct atm_dev *dev) --{ -- int i; -- -- write_lock_irq(&vcc_sklist_lock); -- for (i = 0; i < VCC_HTABLE_SIZE; i++) { -- struct hlist_head *head = &vcc_hash[i]; -- struct hlist_node *node, *tmp; -- struct sock *s; -- struct atm_vcc *vcc; -- -- sk_for_each_safe(s, node, tmp, head) { -- vcc = atm_sk(s); -- if (vcc->dev == dev) { -- vcc_release_async(vcc, -EPIPE); -- sk_del_node_init(s); -- } -- } -- } -- write_unlock_irq(&vcc_sklist_lock); --} -- - - static int popen(struct atm_vcc *vcc) - { -@@ -1269,7 +1245,7 @@ static int atm_init(struct solos_card *c - card->atmdev[i]->ci_range.vci_bits = 16; - card->atmdev[i]->dev_data = card; - card->atmdev[i]->phy_data = (void *)(unsigned long)i; -- atm_dev_signal_change(card->atmdev[i], ATM_PHY_SIG_UNKNOWN); -+ atm_dev_signal_change(card->atmdev[i], ATM_PHY_SIG_FOUND); - - skb = alloc_skb(sizeof(*header), GFP_ATOMIC); - if (!skb) { ---- a/include/linux/atmdev.h -+++ b/include/linux/atmdev.h -@@ -443,6 +443,7 @@ void atm_dev_signal_change(struct atm_de - - void vcc_insert_socket(struct sock *sk); - -+void atm_dev_release_vccs(struct atm_dev *dev); - - /* - * This is approximately the algorithm used by alloc_skb. ---- a/net/atm/common.c -+++ b/net/atm/common.c -@@ -252,6 +252,7 @@ void atm_dev_release_vccs(struct atm_dev - } - write_unlock_irq(&vcc_sklist_lock); - } -+EXPORT_SYMBOL(atm_dev_release_vccs); - - static int adjust_tp(struct atm_trafprm *tp, unsigned char aal) - { |