Date: Sat, 7 Jun 2003 11:50:13 -0700 (PDT) From: Yeasah Pell <yeasah@apocalypse.org> To: freebsd-bugs@FreeBSD.org Subject: Re: kern/51555: Kernel panic in ifconfig when setting IP address in vx0 Message-ID: <200306071850.h57IoDC3061443@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/51555; it has been noted by GNATS. From: Yeasah Pell <yeasah@apocalypse.org> To: freebsd-gnats-submit@FreeBSD.org, le@univie.ac.at, des@freebsd.org Cc: Subject: Re: kern/51555: Kernel panic in ifconfig when setting IP address in vx0 Date: Sat, 07 Jun 2003 14:42:12 -0400 This is a cryptographically signed message in MIME format. --------------ms010605020604020201070301 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit This bug was introduced in version 1.43 of /src/sys/dev/vx/if_vx.c. A quick look at this change reveals an obvious error: http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/vx/if_vx.c.diff?r1=1.42&r2=1.43&f=h The problem is that the ad-hoc mbuf packet header assert code was replaced with the M_ASSERTPKTHDR macro, but this particular modification goes too far in replacing a check for NULL mbuf by the macro functionality. They aren't the same, since the function merely returns if there is no mbuf, whereas the macro causes an assert. This certainly made the update from 5.0 to 5.1 more exciting... :-) Here is a patch to restore the NULL check: --------------------------------- --- if_vx.c Tue Apr 8 10:25:44 2003 +++ if_vx.c.fixed Sat Jun 7 13:57:40 2003 @@ -400,6 +400,9 @@ startagain: /* Sneak a peek at the next packet */ m = ifp->if_snd.ifq_head; + if (m == NULL) { + return; + } /* We need to use m->m_pkthdr.len, so require the header */ M_ASSERTPKTHDR(m); --------------ms010605020604020201070301 Content-Type: application/x-pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIJVDCC AwgwggJxoAMCAQICAwnZDDANBgkqhkiG9w0BAQQFADCBkjELMAkGA1UEBhMCWkExFTATBgNV BAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMQ8wDQYDVQQKEwZUaGF3dGUx HTAbBgNVBAsTFENlcnRpZmljYXRlIFNlcnZpY2VzMSgwJgYDVQQDEx9QZXJzb25hbCBGcmVl bWFpbCBSU0EgMjAwMC44LjMwMB4XDTAzMDQzMDIxMTUxMVoXDTA0MDQyOTIxMTUxMVowRzEf MB0GA1UEAxMWVGhhd3RlIEZyZWVtYWlsIE1lbWJlcjEkMCIGCSqGSIb3DQEJARYVeWVhc2Fo QGFwb2NhbHlwc2Uub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoCk8WLEe Jgpv60QHtwnXci2ZZYHg2W0zX8AjwQAHHrfD5ebnw++luEFgsXMJ8s9e+K8HSdTcwejsEAMu mIFtOoIcHBP8zqqismkM927kZKeee+E0V9k2H2Q0roA0z0b02raQPNAzVC7g3vTyhQGJQU3J Qz1pfXi0/AeAA9CkxEVpEuPAfyKV5HEiI0C1iOaO72+QezOJt/g9SSnsaRRt5xxZ4yLOGr/o SYp3qxxjZVHEz9kMqsk1fGsS4TPy1G7DlcTp1ES7Bymwb6TCM38Rhm8qXVv/sTT1Ak/KesKI 4CQJx7o3CRPKvGUeZq5Liu0NwbAq7DM3qzdyRlWR3mUgCwIDAQABozIwMDAgBgNVHREEGTAX gRV5ZWFzYWhAYXBvY2FseXBzZS5vcmcwDAYDVR0TAQH/BAIwADANBgkqhkiG9w0BAQQFAAOB gQDeK4UAeY+q5cFfDpLb7ihz5BpfcTpd/R+qmRfZPDWsQObb8cp+96ipEYgKqgfKlrfOuRBt f8i5esr5+m8NHtzVOKAInu5d4gPm3iQnWaX0+Y8grcMND2yYPa26GZeTvOoarkCFqlB7V9vB ErMSD46dgesnCXnhWfOnLs+CFXm63DCCAwgwggJxoAMCAQICAwnZDDANBgkqhkiG9w0BAQQF ADCBkjELMAkGA1UEBhMCWkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2Fw ZSBUb3duMQ8wDQYDVQQKEwZUaGF3dGUxHTAbBgNVBAsTFENlcnRpZmljYXRlIFNlcnZpY2Vz MSgwJgYDVQQDEx9QZXJzb25hbCBGcmVlbWFpbCBSU0EgMjAwMC44LjMwMB4XDTAzMDQzMDIx MTUxMVoXDTA0MDQyOTIxMTUxMVowRzEfMB0GA1UEAxMWVGhhd3RlIEZyZWVtYWlsIE1lbWJl cjEkMCIGCSqGSIb3DQEJARYVeWVhc2FoQGFwb2NhbHlwc2Uub3JnMIIBIjANBgkqhkiG9w0B AQEFAAOCAQ8AMIIBCgKCAQEAoCk8WLEeJgpv60QHtwnXci2ZZYHg2W0zX8AjwQAHHrfD5ebn w++luEFgsXMJ8s9e+K8HSdTcwejsEAMumIFtOoIcHBP8zqqismkM927kZKeee+E0V9k2H2Q0 roA0z0b02raQPNAzVC7g3vTyhQGJQU3JQz1pfXi0/AeAA9CkxEVpEuPAfyKV5HEiI0C1iOaO 72+QezOJt/g9SSnsaRRt5xxZ4yLOGr/oSYp3qxxjZVHEz9kMqsk1fGsS4TPy1G7DlcTp1ES7 Bymwb6TCM38Rhm8qXVv/sTT1Ak/KesKI4CQJx7o3CRPKvGUeZq5Liu0NwbAq7DM3qzdyRlWR 3mUgCwIDAQABozIwMDAgBgNVHREEGTAXgRV5ZWFzYWhAYXBvY2FseXBzZS5vcmcwDAYDVR0T AQH/BAIwADANBgkqhkiG9w0BAQQFAAOBgQDeK4UAeY+q5cFfDpLb7ihz5BpfcTpd/R+qmRfZ PDWsQObb8cp+96ipEYgKqgfKlrfOuRBtf8i5esr5+m8NHtzVOKAInu5d4gPm3iQnWaX0+Y8g rcMND2yYPa26GZeTvOoarkCFqlB7V9vBErMSD46dgesnCXnhWfOnLs+CFXm63DCCAzgwggKh oAMCAQICEGZFcrfMdPXPY3ZFhNAukQEwDQYJKoZIhvcNAQEEBQAwgdExCzAJBgNVBAYTAlpB MRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEaMBgGA1UEChMR VGhhd3RlIENvbnN1bHRpbmcxKDAmBgNVBAsTH0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2 aXNpb24xJDAiBgNVBAMTG1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBDQTErMCkGCSqGSIb3 DQEJARYccGVyc29uYWwtZnJlZW1haWxAdGhhd3RlLmNvbTAeFw0wMDA4MzAwMDAwMDBaFw0w NDA4MjcyMzU5NTlaMIGSMQswCQYDVQQGEwJaQTEVMBMGA1UECBMMV2VzdGVybiBDYXBlMRIw EAYDVQQHEwlDYXBlIFRvd24xDzANBgNVBAoTBlRoYXd0ZTEdMBsGA1UECxMUQ2VydGlmaWNh dGUgU2VydmljZXMxKDAmBgNVBAMTH1BlcnNvbmFsIEZyZWVtYWlsIFJTQSAyMDAwLjguMzAw gZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAN4zMqZjxwklRT7SbngnZ4HF2ogZgpcO40Qp imM1Km1wPPrcrvfudG8wvDOQf/k0caCjbZjxw0+iZdsN+kvx1t1hpfmFzVWaNRqdknWoJ67Y cvm6AvbXsJHeHOmr4BgDqHxDQlBRh4M88Dm0m1SKE4f/s5udSWYALQmJ7JRr6aFpAgMBAAGj TjBMMCkGA1UdEQQiMCCkHjAcMRowGAYDVQQDExFQcml2YXRlTGFiZWwxLTI5NzASBgNVHRMB Af8ECDAGAQH/AgEAMAsGA1UdDwQEAwIBBjANBgkqhkiG9w0BAQQFAAOBgQAxsUtHXfkBceX1 U2xdedY9mMAmE2KBIqcS+CKV6BtJtyd7BDm6/ObyJOuR+r3sDSo491BVqGz3Da1MG7wD9LXr okefbKIMWI0xQgkRbLAaadErErJAXWr5edDqLiXdiuT82w0fnQLzWtvKPPZE6iZph39Ins6l n+eE2MliYq0FxjGCA9UwggPRAgEBMIGaMIGSMQswCQYDVQQGEwJaQTEVMBMGA1UECBMMV2Vz dGVybiBDYXBlMRIwEAYDVQQHEwlDYXBlIFRvd24xDzANBgNVBAoTBlRoYXd0ZTEdMBsGA1UE CxMUQ2VydGlmaWNhdGUgU2VydmljZXMxKDAmBgNVBAMTH1BlcnNvbmFsIEZyZWVtYWlsIFJT QSAyMDAwLjguMzACAwnZDDAJBgUrDgMCGgUAoIICDzAYBgkqhkiG9w0BCQMxCwYJKoZIhvcN AQcBMBwGCSqGSIb3DQEJBTEPFw0wMzA2MDcxODQyMTJaMCMGCSqGSIb3DQEJBDEWBBSGfZkH zs5hiuo1V+9zqK77v5eqBTBSBgkqhkiG9w0BCQ8xRTBDMAoGCCqGSIb3DQMHMA4GCCqGSIb3 DQMCAgIAgDANBggqhkiG9w0DAgIBQDAHBgUrDgMCBzANBggqhkiG9w0DAgIBKDCBqwYJKwYB BAGCNxAEMYGdMIGaMIGSMQswCQYDVQQGEwJaQTEVMBMGA1UECBMMV2VzdGVybiBDYXBlMRIw EAYDVQQHEwlDYXBlIFRvd24xDzANBgNVBAoTBlRoYXd0ZTEdMBsGA1UECxMUQ2VydGlmaWNh dGUgU2VydmljZXMxKDAmBgNVBAMTH1BlcnNvbmFsIEZyZWVtYWlsIFJTQSAyMDAwLjguMzAC AwnZDDCBrQYLKoZIhvcNAQkQAgsxgZ2ggZowgZIxCzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxX ZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEPMA0GA1UEChMGVGhhd3RlMR0wGwYD VQQLExRDZXJ0aWZpY2F0ZSBTZXJ2aWNlczEoMCYGA1UEAxMfUGVyc29uYWwgRnJlZW1haWwg UlNBIDIwMDAuOC4zMAIDCdkMMA0GCSqGSIb3DQEBAQUABIIBACLXvJcWOabke63+ptJfOjvq OMkIqXpRgFuQ8jBXnOc3uT0hu59AwlF9C2H2fC+fQCH9NQeT7i8jtGpkEcmzW/kJZgAwq4CL 3JMp4nybKKNAjWoIHmhowjUqzNfLIXI92IjGBzHHIrF+t+HhAjFUMUXNT//MLChlnMQXGzXE u8SegY5A7U5ohSNNvtdn5dcx1mmvBPuCQyC0/EikkOL/zMu9GVhAkqDgGjfL4en27wPckrCo BqZgJ3gV8z5d3nGfcG7eK+FRUTlVHLy7tL7cHolAPVj109ebZ8smyfXZKekaGEreioMu4SSx JZZbsrzQwQ0z5MYfKWFZR2VaPpD9+3kAAAAAAAA= --------------ms010605020604020201070301--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200306071850.h57IoDC3061443>