Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 75227
b: refs/heads/master
c: e697789
h: refs/heads/master
i:
  75225: 00a8d77
  75223: f2b0b8c
v: v3
  • Loading branch information
Linus Torvalds committed Dec 30, 2007
1 parent b49163e commit c87ca92
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 18 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: fb445ee5f9bfc7cbef9e397556170c608dc02955
refs/heads/master: e697789d64f8748cb219d7f5c413c512953802cc
10 changes: 1 addition & 9 deletions trunk/net/bluetooth/hci_conn.c
Original file line number Diff line number Diff line change
Expand Up @@ -259,22 +259,14 @@ int hci_conn_del(struct hci_conn *conn)
}

tasklet_disable(&hdev->tx_task);

hci_conn_del_sysfs(conn);

hci_conn_hash_del(hdev, conn);
if (hdev->notify)
hdev->notify(hdev, HCI_NOTIFY_CONN_DEL);

tasklet_enable(&hdev->tx_task);

skb_queue_purge(&conn->data_q);

hci_conn_del_sysfs(conn);
hci_dev_put(hdev);

/* will free via device release */
put_device(&conn->dev);

return 0;
}

Expand Down
1 change: 1 addition & 0 deletions trunk/net/bluetooth/hci_sysfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -320,6 +320,7 @@ static void del_conn(struct work_struct *work)
{
struct hci_conn *conn = container_of(work, struct hci_conn, work);
device_del(&conn->dev);
put_device(&conn->dev);
}

void hci_conn_del_sysfs(struct hci_conn *conn)
Expand Down
1 change: 1 addition & 0 deletions trunk/net/ipv4/ipconfig.c
Original file line number Diff line number Diff line change
Expand Up @@ -1440,6 +1440,7 @@ static int __init ip_auto_config_setup(char *addrs)
int num = 0;

ic_set_manually = 1;
ic_enable = 1;

if (ic_proto_name(addrs))
return 1;
Expand Down
19 changes: 11 additions & 8 deletions trunk/net/ipv4/tcp_input.c
Original file line number Diff line number Diff line change
Expand Up @@ -2651,6 +2651,7 @@ static int tcp_clean_rtx_queue(struct sock *sk, s32 *seq_rtt_p,
u32 cnt = 0;
u32 reord = tp->packets_out;
s32 seq_rtt = -1;
s32 ca_seq_rtt = -1;
ktime_t last_ackt = net_invalid_timestamp();

while ((skb = tcp_write_queue_head(sk)) && skb != tcp_send_head(sk)) {
Expand All @@ -2659,6 +2660,7 @@ static int tcp_clean_rtx_queue(struct sock *sk, s32 *seq_rtt_p,
u32 packets_acked;
u8 sacked = scb->sacked;

/* Determine how many packets and what bytes were acked, tso and else */
if (after(scb->end_seq, tp->snd_una)) {
if (tcp_skb_pcount(skb) == 1 ||
!after(tp->snd_una, scb->seq))
Expand Down Expand Up @@ -2686,15 +2688,16 @@ static int tcp_clean_rtx_queue(struct sock *sk, s32 *seq_rtt_p,
if (sacked & TCPCB_SACKED_RETRANS)
tp->retrans_out -= packets_acked;
flag |= FLAG_RETRANS_DATA_ACKED;
ca_seq_rtt = -1;
seq_rtt = -1;
if ((flag & FLAG_DATA_ACKED) ||
(packets_acked > 1))
flag |= FLAG_NONHEAD_RETRANS_ACKED;
} else {
ca_seq_rtt = now - scb->when;
last_ackt = skb->tstamp;
if (seq_rtt < 0) {
seq_rtt = now - scb->when;
if (fully_acked)
last_ackt = skb->tstamp;
seq_rtt = ca_seq_rtt;
}
if (!(sacked & TCPCB_SACKED_ACKED))
reord = min(cnt, reord);
Expand All @@ -2709,10 +2712,10 @@ static int tcp_clean_rtx_queue(struct sock *sk, s32 *seq_rtt_p,
!before(end_seq, tp->snd_up))
tp->urg_mode = 0;
} else {
ca_seq_rtt = now - scb->when;
last_ackt = skb->tstamp;
if (seq_rtt < 0) {
seq_rtt = now - scb->when;
if (fully_acked)
last_ackt = skb->tstamp;
seq_rtt = ca_seq_rtt;
}
reord = min(cnt, reord);
}
Expand Down Expand Up @@ -2772,8 +2775,8 @@ static int tcp_clean_rtx_queue(struct sock *sk, s32 *seq_rtt_p,
net_invalid_timestamp()))
rtt_us = ktime_us_delta(ktime_get_real(),
last_ackt);
else if (seq_rtt > 0)
rtt_us = jiffies_to_usecs(seq_rtt);
else if (ca_seq_rtt > 0)
rtt_us = jiffies_to_usecs(ca_seq_rtt);
}

ca_ops->pkts_acked(sk, pkts_acked, rtt_us);
Expand Down

0 comments on commit c87ca92

Please sign in to comment.