(cc'ing netdev with permission)

[EMAIL PROTECTED] wrote:
>
> We have a set of machines that have been usually hanging seconds
>  after reporting an oom-killer: gfp_mask=0xd1, order=0.  We've tried
>  variations of kernels from 2.6.11 through 2.6.16-rc1, with and
>  without PAE enabled, all seem to want to hang after the syslog 
>  oom-killer message.
> 
>  Here's the hardware configuration and setup for your reference:
> 
>  motherboard: supermicro X6DH8-XG2, 
>  ram        : 4GB
>  procs      : dual xeon-3ghz nocona (running in 32bit environment)
>  distro     : gentoo with vanilla kernel.org kernels
> 
>  The bootdrive on this system is a raptor 73G on the onboard 
>  ICH controller (using ata_piix).
> 
>  There are 2 sets of 7x400G sata drives on two 3ware 9500 card,
>  configured in raid5 fashion each.
> 
>  We use LVM to aggregate/stripe the two raid5 sets, then use
>  xfs as the filesystem.
> 
>  Each of the machines nfs mounts three other identically
>  configured systems to give us the added storage capacity.
> 
>  The workload on these systems is a commercially available 
>  multithreaded server (they run the flash media server from
>  macromedia).  Originally with the hangs we thought it
>  was related to the reserved space from the 100 processes with
>  100 threads (10000 threads at 8meg thread stack = ~80G), but 
>  reducing it to 128k stacks seems to still cause the system to
>  hang at peak loads.  We can usually make the systems hang within
>  a half hour during these times (3PM-12AM EST).  We've managed
>  to get the systems to run for a bit longer by killing off the
>  fms processes every half hour, but this doesn't totally address
>  the problem as we've had it happen in between then as well.
> 
>  I've included the output from /proc/meminfo, /proc/slabinfo,
>  dmesg, and syslog which show the oom-killer message as well
>  as subsequent messages.  I've also included the kernel config,
>  and lspci output.  The meminfo/slabinfo files are going to 
>  be a bit large as they are from logging the output from the
>  start of the machine till hang time, but it should give you
>  an idea of how the stuff grows.  This particular set is from
>  a machine running 2.6.15.1, fyi.
> 

This failure is due to a leak in the skbuff_head_cache slab.

/proc/slabinfo:
slabinfo - version: 2.1
# name            <active_objs> <num_objs> <objsize> <objperslab> 
<pagesperslab> : tunables <limit> <batchcount> <sharedfactor> : slabdata 
<active_slabs> <num_slabs> <sharedavail>
xfs_chashlist         20   1014     20  169    1 : tunables  120   60    8 : 
slabdata      6      6      0
xfs_ili               13    112    140   28    1 : tunables  120   60    8 : 
slabdata      4      4      0
xfs_ifork              0      0     56   67    1 : tunables  120   60    8 : 
slabdata      0      0      0
xfs_efi_item           0      0    260   15    1 : tunables   54   27    8 : 
slabdata      0      0      0
xfs_efd_item           0      0    260   15    1 : tunables   54   27    8 : 
slabdata      0      0      0
xfs_buf_item           0     26    148   26    1 : tunables  120   60    8 : 
slabdata      0      1      0
xfs_dabuf              3    203     16  203    1 : tunables  120   60    8 : 
slabdata      1      1      0
xfs_da_state           0      0    336   11    1 : tunables   54   27    8 : 
slabdata      0      0      0
xfs_trans              1     13    596   13    2 : tunables   54   27    8 : 
slabdata      1      1      0
xfs_inode             28    220    368   10    1 : tunables   54   27    8 : 
slabdata     22     22      7
xfs_btree_cur          0      0    140   28    1 : tunables  120   60    8 : 
slabdata      0      0      0
xfs_bmap_free_item      0      0     16  203    1 : tunables  120   60    8 : 
slabdata      0      0      0
xfs_buf               42    234    220   18    1 : tunables  120   60    8 : 
slabdata     11     13      0
xfs_ioend             32     50     76   50    1 : tunables  120   60    8 : 
slabdata      1      1      0
xfs_vnode             20    170    380   10    1 : tunables   54   27    8 : 
slabdata     17     17      0
rpc_buffers            8      8   2048    2    1 : tunables   24   12    8 : 
slabdata      4      4      0
rpc_tasks             14    150    256   15    1 : tunables  120   60    8 : 
slabdata      5     10      0
rpc_inode_cache       12     14    512    7    1 : tunables   54   27    8 : 
slabdata      2      2      0
UNIX                 187    260    384   10    1 : tunables   54   27    8 : 
slabdata     26     26      0
tcp_bind_bucket      217    406     16  203    1 : tunables  120   60    8 : 
slabdata      2      2      0
inet_peer_cache        4     59     64   59    1 : tunables  120   60    8 : 
slabdata      1      1      0
ip_fib_alias          10    113     32  113    1 : tunables  120   60    8 : 
slabdata      1      1      0
ip_fib_hash           10    113     32  113    1 : tunables  120   60    8 : 
slabdata      1      1      0
ip_dst_cache          36     90    256   15    1 : tunables  120   60    8 : 
slabdata      6      6      0
arp_cache              9     15    256   15    1 : tunables  120   60    8 : 
slabdata      1      1      0
RAW                    5      7    512    7    1 : tunables   54   27    8 : 
slabdata      1      1      0
UDP                    6     28    512    7    1 : tunables   54   27    8 : 
slabdata      3      4      0
tw_sock_TCP           45     60    128   30    1 : tunables  120   60    8 : 
slabdata      2      2      0
request_sock_TCP       1     59     64   59    1 : tunables  120   60    8 : 
slabdata      1      1      0
TCP                 5059   5082   1152    7    2 : tunables   24   12    8 : 
slabdata    726    726      0
dm_tio               346   1421     16  203    1 : tunables  120   60    8 : 
slabdata      7      7     48
dm_io                503   1421     16  203    1 : tunables  120   60    8 : 
slabdata      7      7    240
scsi_cmd_cache        84    120    384   10    1 : tunables   54   27    8 : 
slabdata     12     12     11
cfq_ioc_pool           0      0     48   78    1 : tunables  120   60    8 : 
slabdata      0      0      0
cfq_pool               0      0     96   40    1 : tunables  120   60    8 : 
slabdata      0      0      0
crq_pool               0      0     48   78    1 : tunables  120   60    8 : 
slabdata      0      0      0
deadline_drq          25    288     52   72    1 : tunables  120   60    8 : 
slabdata      3      4      0
as_arq               144    236     64   59    1 : tunables  120   60    8 : 
slabdata      4      4      0
mqueue_inode_cache      1      6    640    6    1 : tunables   54   27    8 : 
slabdata      1      1      0
udf_inode_cache        0      0    404    9    1 : tunables   54   27    8 : 
slabdata      0      0      0
romfs_inode_cache      0      0    356   11    1 : tunables   54   27    8 : 
slabdata      0      0      0
nfs_write_data        84    182    512    7    1 : tunables   54   27    8 : 
slabdata     25     26     47
nfs_read_data         36     91    512    7    1 : tunables   54   27    8 : 
slabdata      8     13      4
nfs_inode_cache       42    192    600    6    1 : tunables   54   27    8 : 
slabdata     32     32     25
nfs_page             292   3186     64   59    1 : tunables  120   60    8 : 
slabdata     54     54    288
isofs_inode_cache      0      0    376   10    1 : tunables   54   27    8 : 
slabdata      0      0      0
hugetlbfs_inode_cache      1     11    348   11    1 : tunables   54   27    8 
: slabdata      1      1      0
ext2_inode_cache       0      0    460    8    1 : tunables   54   27    8 : 
slabdata      0      0      0
journal_handle       263    338     20  169    1 : tunables  120   60    8 : 
slabdata      2      2      0
journal_head         664   1656     52   72    1 : tunables  120   60    8 : 
slabdata     23     23    388
revoke_table           4    254     12  254    1 : tunables  120   60    8 : 
slabdata      1      1      0
revoke_record          0      0     16  203    1 : tunables  120   60    8 : 
slabdata      0      0      0
ext3_inode_cache     952   1424    496    8    1 : tunables   54   27    8 : 
slabdata    178    178    216
ext3_xattr             0      0     48   78    1 : tunables  120   60    8 : 
slabdata      0      0      0
dnotify_cache          0      0     20  169    1 : tunables  120   60    8 : 
slabdata      0      0      0
eventpoll_pwq          0      0     36  101    1 : tunables  120   60    8 : 
slabdata      0      0      0
eventpoll_epi          0      0    128   30    1 : tunables  120   60    8 : 
slabdata      0      0      0
inotify_event_cache      0      0     28  127    1 : tunables  120   60    8 : 
slabdata      0      0      0
inotify_watch_cache      0      0     36  101    1 : tunables  120   60    8 : 
slabdata      0      0      0
kioctx                 0      0    256   15    1 : tunables  120   60    8 : 
slabdata      0      0      0
kiocb                  0      0    128   30    1 : tunables  120   60    8 : 
slabdata      0      0      0
fasync_cache           0      0     16  203    1 : tunables  120   60    8 : 
slabdata      0      0      0
shmem_inode_cache     22     54    444    9    1 : tunables   54   27    8 : 
slabdata      6      6      0
posix_timers_cache      0      0     96   40    1 : tunables  120   60    8 : 
slabdata      0      0      0
uid_cache              6     59     64   59    1 : tunables  120   60    8 : 
slabdata      1      1      0
sgpool-128            32     33   2560    3    2 : tunables   24   12    8 : 
slabdata     11     11      0
sgpool-64             32     33   1280    3    1 : tunables   24   12    8 : 
slabdata     11     11      0
sgpool-32             35     78    640    6    1 : tunables   54   27    8 : 
slabdata      9     13      0
sgpool-16             36    100    384   10    1 : tunables   54   27    8 : 
slabdata      7     10      0
sgpool-8             198    270    256   15    1 : tunables  120   60    8 : 
slabdata     18     18     60
blkdev_ioc          1762   2032     28  127    1 : tunables  120   60    8 : 
slabdata     16     16      0
blkdev_queue          30     50    388   10    1 : tunables   54   27    8 : 
slabdata      5      5      0
blkdev_requests      267    312    160   24    1 : tunables  120   60    8 : 
slabdata     13     13    104
biovec-(256)         260    260   3072    2    2 : tunables   24   12    8 : 
slabdata    130    130      0
biovec-128           264    270   1536    5    2 : tunables   24   12    8 : 
slabdata     54     54      0
biovec-64            276    315    768    5    1 : tunables   54   27    8 : 
slabdata     58     63      0
biovec-16            281    345    256   15    1 : tunables  120   60    8 : 
slabdata     21     23      0
biovec-4             288    531     64   59    1 : tunables  120   60    8 : 
slabdata      8      9      0
biovec-1             792   2030     16  203    1 : tunables  120   60    8 : 
slabdata     10     10    344
bio                  810   1650    128   30    1 : tunables  120   60    8 : 
slabdata     55     55    464
file_lock_cache      276    336     92   42    1 : tunables  120   60    8 : 
slabdata      8      8      0
sock_inode_cache    5366   5411    512    7    1 : tunables   54   27    8 : 
slabdata    773    773      0
skbuff_fclone_cache    259    340    384   10    1 : tunables   54   27    8 : 
slabdata     34     34    173
skbuff_head_cache 2259630 2280390    256   15    1 : tunables  120   60    8 : 
slabdata 152026 152026      0
acpi_operand         580    644     40   92    1 : tunables  120   60    8 : 
slabdata      7      7      0
acpi_parse_ext         0      0     44   84    1 : tunables  120   60    8 : 
slabdata      0      0      0
acpi_parse             0      0     28  127    1 : tunables  120   60    8 : 
slabdata      0      0      0
acpi_state             0      0     48   78    1 : tunables  120   60    8 : 
slabdata      0      0      0
proc_inode_cache     308    429    364   11    1 : tunables   54   27    8 : 
slabdata     39     39      6
sigqueue              17     54    144   27    1 : tunables  120   60    8 : 
slabdata      1      2      0
radix_tree_node     2315  10570    276   14    1 : tunables   54   27    8 : 
slabdata    755    755    172
bdev_cache            12     28    512    7    1 : tunables   54   27    8 : 
slabdata      4      4      0
sysfs_dir_cache     3744   3864     40   92    1 : tunables  120   60    8 : 
slabdata     42     42      0
mnt_cache             26     60    128   30    1 : tunables  120   60    8 : 
slabdata      2      2      0
inode_cache         7198   7271    348   11    1 : tunables   54   27    8 : 
slabdata    661    661      0
dentry_cache       13958  36428    140   28    1 : tunables  120   60    8 : 
slabdata   1301   1301    240
filp               11910  11910    256   15    1 : tunables  120   60    8 : 
slabdata    794    794      0
names_cache          255    255   4096    1    1 : tunables   24   12    8 : 
slabdata    255    255      0
idr_layer_cache       94    145    136   29    1 : tunables  120   60    8 : 
slabdata      5      5      0
buffer_head        11741  30528     52   72    1 : tunables  120   60    8 : 
slabdata    424    424     68
mm_struct            157    210    512    7    1 : tunables   54   27    8 : 
slabdata     30     30      0
vm_area_struct     28001  28350     92   42    1 : tunables  120   60    8 : 
slabdata    675    675      0
fs_cache             159    354     64   59    1 : tunables  120   60    8 : 
slabdata      6      6      0
files_cache          155    203    512    7    1 : tunables   54   27    8 : 
slabdata     29     29      0
signal_cache         210    270    384   10    1 : tunables   54   27    8 : 
slabdata     27     27      0
sighand_cache        207    240   1408    5    2 : tunables   24   12    8 : 
slabdata     48     48      0
task_struct         9737   9912   1280    3    1 : tunables   24   12    8 : 
slabdata   3304   3304     96
anon_vma            4564   4826     12  254    1 : tunables  120   60    8 : 
slabdata     19     19      0
pgd                  168    339     32  113    1 : tunables  120   60    8 : 
slabdata      3      3      0
pmd                  465    501   4096    1    1 : tunables   24   12    8 : 
slabdata    465    501      0
size-131072(DMA)       0      0 131072    1   32 : tunables    8    4    0 : 
slabdata      0      0      0
size-131072            0      0 131072    1   32 : tunables    8    4    0 : 
slabdata      0      0      0
size-65536(DMA)        0      0  65536    1   16 : tunables    8    4    0 : 
slabdata      0      0      0
size-65536             0      0  65536    1   16 : tunables    8    4    0 : 
slabdata      0      0      0
size-32768(DMA)        0      0  32768    1    8 : tunables    8    4    0 : 
slabdata      0      0      0
size-32768            11     11  32768    1    8 : tunables    8    4    0 : 
slabdata     11     11      0
size-16384(DMA)        0      0  16384    1    4 : tunables    8    4    0 : 
slabdata      0      0      0
size-16384            23     34  16384    1    4 : tunables    8    4    0 : 
slabdata     23     34      0
size-8192(DMA)         0      0   8192    1    2 : tunables    8    4    0 : 
slabdata      0      0      0
size-8192          10162  10171   8192    1    2 : tunables    8    4    0 : 
slabdata  10162  10171      0
size-4096(DMA)         0      0   4096    1    1 : tunables   24   12    8 : 
slabdata      0      0      0
size-4096          12569  12569   4096    1    1 : tunables   24   12    8 : 
slabdata  12569  12569     12
size-2048(DMA)         0      0   2048    2    1 : tunables   24   12    8 : 
slabdata      0      0      0
size-2048            302    342   2048    2    1 : tunables   24   12    8 : 
slabdata    170    171      2
size-1024(DMA)         0      0   1024    4    1 : tunables   54   27    8 : 
slabdata      0      0      0
size-1024            471    520   1024    4    1 : tunables   54   27    8 : 
slabdata    130    130      6
size-512(DMA)          0      0    512    8    1 : tunables   54   27    8 : 
slabdata      0      0      0
size-512           14877  14904    512    8    1 : tunables   54   27    8 : 
slabdata   1863   1863    162
size-256(DMA)          0      0    256   15    1 : tunables  120   60    8 : 
slabdata      0      0      0
size-256             916   1005    256   15    1 : tunables  120   60    8 : 
slabdata     67     67      0
size-128(DMA)          0      0    128   30    1 : tunables  120   60    8 : 
slabdata      0      0      0
size-128            3153   3780    128   30    1 : tunables  120   60    8 : 
slabdata    126    126      0
size-64(DMA)           0      0     64   59    1 : tunables  120   60    8 : 
slabdata      0      0      0
size-32(DMA)           0      0     32  113    1 : tunables  120   60    8 : 
slabdata      0      0      0
size-64             4186   4838     64   59    1 : tunables  120   60    8 : 
slabdata     82     82      0
size-32            26668  26668     32  113    1 : tunables  120   60    8 : 
slabdata    236    236      0
kmem_cache           180    180    128   30    1 : tunables  120   60    8 : 
slabdata      6      6      0

-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to