wok rev 3911

linux: add hotfix patch
author Pascal Bellard <pascal.bellard@slitaz.org>
date Mon Aug 17 16:45:47 2009 +0200 (2009-08-17)
parents 85c6a353fee0
children 56b92e108859
files linux/receipt linux/stuff/linux-hotfix-2.6.30.4.u linux/stuff/linux-unlzma-2.6.30.4.u
line diff
     1.1 --- a/linux/receipt	Mon Aug 17 10:04:00 2009 +0000
     1.2 +++ b/linux/receipt	Mon Aug 17 16:45:47 2009 +0200
     1.3 @@ -36,6 +36,7 @@
     1.4  $PACKAGE-diff-$VERSION.u
     1.5  $PACKAGE-freeinitrd-$VERSION.u
     1.6  $PACKAGE-unlzma-$VERSION.u
     1.7 +$PACKAGE-hotfix-$VERSION.u
     1.8  EOT
     1.9  	make mrproper
    1.10  	cp ../stuff/$PACKAGE-$VERSION-slitaz.config .config
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/linux/stuff/linux-hotfix-2.6.30.4.u	Mon Aug 17 16:45:47 2009 +0200
     2.3 @@ -0,0 +1,11 @@
     2.4 +--- linux-2.6.30.4/net/socket.c
     2.5 ++++ linux-2.6.30.4/net/socket.c
     2.6 +@@ -736,7 +736,7 @@
     2.7 + 	if (more)
     2.8 + 		flags |= MSG_MORE;
     2.9 + 
    2.10 +-	return sock->ops->sendpage(sock, page, offset, size, flags);
    2.11 ++	return kernel_sendpage(sock, page, offset, size, flags);
    2.12 + }
    2.13 + 
    2.14 + static ssize_t sock_splice_read(struct file *file, loff_t *ppos,
     3.1 --- a/linux/stuff/linux-unlzma-2.6.30.4.u	Mon Aug 17 10:04:00 2009 +0000
     3.2 +++ b/linux/stuff/linux-unlzma-2.6.30.4.u	Mon Aug 17 16:45:47 2009 +0200
     3.3 @@ -130,7 +130,15 @@
     3.4   				if (rc_is_bit_0(rc, prob)) {
     3.5   					rc_update_bit_0(rc, prob);
     3.6   					distance = cst->rep2;
     3.7 -@@ -451,7 +489,7 @@
     3.8 +@@ -444,24 +482,24 @@
     3.9 + 	prob_len = prob + LZMA_LEN_CHOICE;
    3.10 + 	if (rc_is_bit_0(rc, prob_len)) {
    3.11 + 		rc_update_bit_0(rc, prob_len);
    3.12 +-		prob_len = (prob + LZMA_LEN_LOW
    3.13 ++		prob_len += LZMA_LEN_LOW - LZMA_LEN_CHOICE
    3.14 + 			    + (pos_state <<
    3.15 + 			       LZMA_LEN_NUM_LOW_BITS));
    3.16 + 		offset = 0;
    3.17   		num_bits = LZMA_LEN_NUM_LOW_BITS;
    3.18   	} else {
    3.19   		rc_update_bit_1(rc, prob_len);
    3.20 @@ -138,8 +146,11 @@
    3.21  +		prob_len += LZMA_LEN_CHOICE_2 - LZMA_LEN_CHOICE;
    3.22   		if (rc_is_bit_0(rc, prob_len)) {
    3.23   			rc_update_bit_0(rc, prob_len);
    3.24 - 			prob_len = (prob + LZMA_LEN_MID
    3.25 -@@ -461,7 +499,7 @@
    3.26 +-			prob_len = (prob + LZMA_LEN_MID
    3.27 ++			prob_len += LZMA_LEN_MID - LZMA_LEN_CHOICE_2
    3.28 + 				    + (pos_state <<
    3.29 + 				       LZMA_LEN_NUM_MID_BITS));
    3.30 + 			offset = 1 << LZMA_LEN_NUM_LOW_BITS;
    3.31   			num_bits = LZMA_LEN_NUM_MID_BITS;
    3.32   		} else {
    3.33   			rc_update_bit_1(rc, prob_len);
    3.34 @@ -167,7 +178,7 @@
    3.35   
    3.36   	rc_init(&rc, fill, inbuf, in_len);
    3.37   
    3.38 -@@ -596,13 +639,13 @@
    3.39 +@@ -596,23 +639,23 @@
    3.40   	if (header.dict_size == 0)
    3.41   		header.dict_size = 1;
    3.42   
    3.43 @@ -183,8 +194,11 @@
    3.44   		goto exit_1;
    3.45   
    3.46   	num_probs = LZMA_BASE_SIZE + (LZMA_LIT_SIZE << (lc + lp));
    3.47 -@@ -612,7 +655,7 @@
    3.48 - 	num_probs = LZMA_LITERAL + (LZMA_LIT_SIZE << (lc + lp));
    3.49 + 	p = (uint16_t *) large_malloc(num_probs * sizeof(*p));
    3.50 + 	if (p == 0)
    3.51 + 		goto exit_2;
    3.52 +-	num_probs = LZMA_LITERAL + (LZMA_LIT_SIZE << (lc + lp));
    3.53 ++	num_probs += LZMA_LITERAL - LZMA_BASE_SIZE;
    3.54   	for (i = 0; i < num_probs; i++)
    3.55   		p[i] = (1 << RC_MODEL_TOTAL_BITS) >> 1;
    3.56  -