diff options
author | Mario Schuknecht <schuknecht@dresearch-fe.de> | 2010-10-14 12:29:21 +0000 |
---|---|---|
committer | Steffen Sledz <sledz@dresearch-fe.de> | 2011-06-06 10:54:02 +0200 |
commit | e29b167bc68a136ae916963912945f1b0b0108ad (patch) | |
tree | d8dc4a8a150c863acee45f32809108411701c8f4 /recipes | |
parent | 637fb6589cc2e627c8cba8026312bf96f613c7ff (diff) | |
download | openembedded-e29b167bc68a136ae916963912945f1b0b0108ad.tar.gz |
linux-libc-headers-2.6.24: add additional tcp ioctl (for hipox machine only)
Signed-off-by: Mario Schuknecht <schuknecht@dresearch-fe.de>
Acked-by: Steffen Sledz <sledz@dresearch-fe.de>
Diffstat (limited to 'recipes')
-rw-r--r-- | recipes/linux-libc-headers/linux-libc-headers-2.6.24/hipox/siocoutqsnd.patch | 54 | ||||
-rw-r--r-- | recipes/linux-libc-headers/linux-libc-headers_2.6.24.bb | 4 |
2 files changed, 58 insertions, 0 deletions
diff --git a/recipes/linux-libc-headers/linux-libc-headers-2.6.24/hipox/siocoutqsnd.patch b/recipes/linux-libc-headers/linux-libc-headers-2.6.24/hipox/siocoutqsnd.patch new file mode 100644 index 0000000000..616a860d62 --- /dev/null +++ b/recipes/linux-libc-headers/linux-libc-headers-2.6.24/hipox/siocoutqsnd.patch @@ -0,0 +1,54 @@ +tcp: ioctl type SIOCOUTQNSD returns amount of data not sent + +In contrast to SIOCOUTQ which returns the amount of data sent +but not yet acknowledged plus data not yet sent this patch only +returns the data not sent. + +For various methods of live streaming bitrate control it may +be helpful to know how much data are in the tcp outqueue are +not sent yet. + +Signed-off-by: Mario Schuknecht <m.schuknecht@dresearch.de> + +diff -Nurd linux-2.6.24.orig//include/asm-arm/ioctls.h linux-2.6.24/include/asm-arm/ioctls.h +--- linux-2.6.24.orig//include/asm-arm/ioctls.h 2010-10-08 09:03:02.000000000 +0200 ++++ linux-2.6.24/include/asm-arm/ioctls.h 2010-10-08 09:09:55.000000000 +0200 +@@ -53,6 +53,8 @@ + #define TIOCGPTN _IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */ + #define TIOCSPTLCK _IOW('T',0x31, int) /* Lock/unlock Pty */ + ++#define TIOCOUTQNSD 0x5437 ++ + #define FIONCLEX 0x5450 /* these numbers need to be adjusted. */ + #define FIOCLEX 0x5451 + #define FIOASYNC 0x5452 +diff -Nurd linux-2.6.24.orig//include/linux/sockios.h linux-2.6.24/include/linux/sockios.h +--- linux-2.6.24.orig//include/linux/sockios.h 2010-10-08 09:03:02.000000000 +0200 ++++ linux-2.6.24/include/linux/sockios.h 2010-10-08 09:10:43.000000000 +0200 +@@ -23,6 +23,7 @@ + /* Linux-specific socket ioctls */ + #define SIOCINQ FIONREAD + #define SIOCOUTQ TIOCOUTQ ++#define SIOCOUTQNSD TIOCOUTQNSD + + /* Routing table calls. */ + #define SIOCADDRT 0x890B /* add routing table entry */ +diff -Nurd linux-2.6.24.orig//net/ipv4/tcp.c linux-2.6.24/net/ipv4/tcp.c +--- linux-2.6.24.orig//net/ipv4/tcp.c 2010-10-08 09:02:59.000000000 +0200 ++++ linux-2.6.24/net/ipv4/tcp.c 2010-10-08 09:10:43.000000000 +0200 +@@ -444,6 +444,15 @@ + else + answ = tp->write_seq - tp->snd_una; + break; ++ case SIOCOUTQNSD: ++ if (sk->sk_state == TCP_LISTEN) ++ return -EINVAL; ++ ++ if ((1 << sk->sk_state) & (TCPF_SYN_SENT | TCPF_SYN_RECV)) ++ answ = 0; ++ else ++ answ = tp->write_seq - tp->snd_nxt; ++ break; + default: + return -ENOIOCTLCMD; + } diff --git a/recipes/linux-libc-headers/linux-libc-headers_2.6.24.bb b/recipes/linux-libc-headers/linux-libc-headers_2.6.24.bb index 9c683a7513..148d03fae3 100644 --- a/recipes/linux-libc-headers/linux-libc-headers_2.6.24.bb +++ b/recipes/linux-libc-headers/linux-libc-headers_2.6.24.bb @@ -10,6 +10,10 @@ SRC_URI = "${KERNELORG_MIRROR}/pub/linux/kernel/v2.6/linux-${PV}.tar.bz2 \ file://make-3.82.patch \ file://unifdef.patch" +SRC_URI_append_hipox = " \ + file://siocoutqsnd.patch \ + " + S = "${WORKDIR}/linux-${PV}" do_configure() { |