On Sun, 16 Dec 2007, Sean Chittenden wrote: Hi all, >>> 1033 q = strchr(s,'/'); >>> 1034 if (q && which == RTA_DST) { >>> 1035 *q = '\0'; >>> 1036 if ((val = inet_network(s)) != INADDR_NONE) { >>> 1037 inet_makenetandmask( >>> 1038 val, &su->sin, strtoul(q+1, >>> 0, 0)); 1039 return (0); >>> 1040 } >>> 1041 *q = '/'; >>> 1042 } >>> >>> Any comments? >>> >> Preliminary results show that inet_network from libc is somehow >> thrashing $ebx even if it is not supposed to. -O0 disables value >> caching in register and always allocates stack slot for the 'q' >> pointer, so the problem is not visible. > > > Does setting q to volatile suffice as a workaround for the problem? I was > talking to someone last week that said they have taken to using volatile as a > work around for GCC aligning instructions inside of conditionals improperly. I have a patch sitting in multiple queues to address the route issue. It's just time, review and all that in the before christmas in the middle of two releases, ... season that slows certain things down. Can we, for now, assume that there is a fix and it'll get in as soon as possible and stop wasting more people's time on this? Thanks. -- Bjoern A. Zeeb bzeeb at Zabbadoz dot NeT Software is harder than hardware so better get it right the first time.Received on Mon Dec 17 2007 - 07:33:15 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:24 UTC