[Bug 338795] [NEW] limit request size on COWed devices

Juan Moyano wincus.public at gmail.com
Fri Mar 6 15:42:37 UTC 2009


Public bug reported:

Binary package hint: user-mode-linux

2.6.22-2um-0ubuntu2 package contains a bug that prevents the use of cow
files

see:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=442108  
http://mirror.celinuxforum.org/gitstat/commit-detail.php?commit=8619b86f20588c020b280e6f67a9b8712b1ee38a
http://www.mail-archive.com/user-mode-linux-user@lists.sourceforge.net/msg05620.html

In detail:

The problem arise when trying to start one uml instance using a cow
filesystem support.

jon at realbox:~/uml/uml-2$ linux.uml ubda=root_fs_cow,root_fs ubdb=swap_fs eth0=tuntap,,,192.168.122.254 mem=256M
Core dump limits :                                                                                             
        soft - 0                                                                                               
        hard - NONE                                                                                            
Checking that ptrace can change system call numbers...OK                                                       
Checking syscall emulation patch for ptrace...OK                                                               
Checking advanced syscall emulation patch for ptrace...OK                                                      
Checking for tmpfs mount on /dev/shm...OK                                                                      
Checking PROT_EXEC mmap in /dev/shm/...OK                                                                      
Checking for the skas3 patch in the host:                                                                      
  - /proc/mm...not found: No such file or directory                                                            
  - PTRACE_FAULTINFO...not found                                                                               
  - PTRACE_LDT...not found                                                                                     
UML running in SKAS0 mode                                                                                      
Adding 3510272 bytes to physical memory to account for exec-shield gap                                         
[42949372.960000] Linux version 2.6.22-rc5 (root at vernadsky) (gcc version 4.1.3 20070629 (prerelease) (Ubuntu 4.1.2-13ubuntu2)) #2 Mon Jul 2 10:14:22 GMT 2007
[42949372.960000] Built 1 zonelists.  Total pages: 65875                                                                                                     
[42949372.960000] Kernel command line: ubda=root_fs_cow,root_fs ubdb=swap_fs eth0=tuntap,,,192.168.122.254 mem=256M root=98:0                                
[42949372.960000] PID hash table entries: 2048 (order: 11, 8192 bytes)                                                                                       
[42949372.960000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)                                                                            
[42949372.960000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)                                                                             
[42949372.960000] Memory: 254464k available                                                                                                                  
[42949373.310000] Mount-cache hash table entries: 512                                                                                                        
[42949373.310000] Checking for host processor cmov support...Yes                                                                                             
[42949373.310000] Checking for host processor xmm support...No                                                                                               
[42949373.310000] Checking that host ptys support output SIGIO...Yes                                                                                         
[42949373.310000] Checking that host ptys support SIGIO on close...No, enabling workaround                                                                   
[42949373.310000] Using 2.6 host AIO                                                                                                                         
[42949373.310000] NET: Registered protocol family 16                                                                                                         
[42949373.310000] NET: Registered protocol family 2                                                                                                          
[42949373.440000] IP route cache hash table entries: 4096 (order: 2, 16384 bytes)                                                                            
[42949373.440000] TCP established hash table entries: 16384 (order: 5, 131072 bytes)                                                                         
[42949373.440000] TCP bind hash table entries: 16384 (order: 4, 65536 bytes)                                                                                 
[42949373.440000] TCP: Hash tables configured (established 16384 bind 16384)                                                                                 
[42949373.440000] TCP reno registered                                                                                                                        
[42949373.470000] Checking host MADV_REMOVE support...OK                                                                                                     
[42949373.470000] mconsole (version 2) initialized on /home/jon/.uml/LuZ1y6/mconsole                                                                         
[42949373.470000] Mapper v0.1                                                                                                                                
[42949373.470000] mmapper_init - find_iomem failed                                                                                                           
[42949373.470000] UML Watchdog Timer                                                                                                                         
[42949373.470000] Host TLS support detected                                                                                                                  
[42949373.470000] Detected host type: i386                                                                                                                   
[42949373.470000] VFS: Disk quotas dquot_6.5.1                                                                                                               
[42949373.470000] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)                                                                                 
[42949373.470000] JFS: nTxBlock = 1990, nTxLock = 15925                                                                                                      
[42949373.470000] SGI XFS with ACLs, security attributes, realtime, large block numbers, no debug enabled                                                    
[42949373.470000] SGI XFS Quota Management subsystem                                                                                                         
[42949373.470000] io scheduler noop registered                                                                                                               
[42949373.470000] io scheduler anticipatory registered (default)                                                                                             
[42949373.470000] io scheduler deadline registered                                                                                                           
[42949373.470000] io scheduler cfq registered                                                                                                                
[42949373.640000] SoftDog: cannot register miscdev on minor=130 (err=-16)                                                                                    
[42949373.640000] TCP cubic registered                                                                                                                       
[42949373.640000] NET: Registered protocol family 1                                                                                                          
[42949373.640000] NET: Registered protocol family 17                                                                                                         
[42949373.650000] Initialized stdio console driver                                                                                                           
[42949373.650000] Console initialized on /dev/tty0                                                                                                           
[42949373.650000] Initializing software serial port version 1                                                                                                
[42949373.680000]  ubda: unknown partition table                                                                                                             
[42949373.720000]  ubdb: unknown partition table                                                                                                             
[42949373.720000] Choosing a random ethernet address for device eth0                                                                                         
[42949373.720000] Netdevice 0 (4a:c7:fa:e2:1b:c5) : TUN/TAP backend - IP = 192.168.122.254                                                                   
[42949373.720000] ReiserFS: ubda: found reiserfs format "3.6" with standard journal                                                                          
[42949373.720000] ReiserFS: ubda: using ordered data mode                                                                                                    
[42949373.720000] ReiserFS: ubda: journal params: device ubda, size 8192, journal first block 18, max trans len 1024, max batch 900, max commit age 30, max trans age 30                                                                                                                                                        
[42949373.720000] ReiserFS: ubda: checking transaction log (ubda)                                                                                               
[42949373.720000] ReiserFS: ubda: Using r5 hash to sort names                                                                                                   
[42949373.720000] VFS: Mounted root (reiserfs filesystem) readonly.                                                                                             
[42949373.720000] Kernel panic - not syncing: Operation too long                                                                                                
[42949373.720000]                                                                                                                                               
[42949373.720000] EIP: 0073:[<b8030430>] CPU: 0 Not tainted ESP: 007b:b7eaffb4 EFLAGS: 00000246                                                                 
[42949373.720000]     Not tainted                                                                                                                               
[42949373.720000] EAX: 00000000 EBX: 00005c74 ECX: 00000013 EDX: 00005c74                                                                                       
[42949373.720000] ESI: 00005c70 EDI: 00000011 EBP: b7eaffd8 DS: 007b ES: 007b                                                                                   
[42949373.720000] 08bcfa4c:  [<0806ce8c>] show_regs+0xb4/0xb9                                                                                                   
[42949373.720000] 08bcfa78:  [<0805b038>] panic_exit+0x25/0x3f                                                                                                  
[42949373.720000] 08bcfa8c:  [<0807c418>] notifier_call_chain+0x21/0x46                                                                                         
[42949373.720000] 08bcfaac:  [<0807c4b3>] __atomic_notifier_call_chain+0x17/0x19                                                                                
[42949373.720000] 08bcfac8:  [<0807c4ca>] atomic_notifier_call_chain+0x15/0x17                                                                                  
[42949373.720000] 08bcfae4:  [<08071532>] panic+0x52/0xd8                                                                                                       
[42949373.720000] 08bcfb04:  [<08062e2b>] cowify_req+0x38/0xe3                                                                                                  
[42949373.720000] 08bcfb24:  [<08062f85>] prepare_request+0xaf/0xba                                                                                             
[42949373.720000] 08bcfb50:  [<0806303d>] do_ubd_request+0xad/0x140                                                                                             
[42949373.720000] 08bcfb84:  [<081c259f>] __generic_unplug_device+0x20/0x26
[42949373.720000] 08bcfb94:  [<081c25b5>] generic_unplug_device+0x10/0x18
[42949373.720000] 08bcfba0:  [<081c261d>] blk_backing_dev_unplug+0x60/0x69
[42949373.720000] 08bcfbc4:  [<080c7482>] block_sync_page+0x32/0x36
[42949373.720000] 08bcfbd4:  [<0809102a>] sync_page+0x31/0x3b
[42949373.720000] 08bcfbe0:  [<0823dafd>] __wait_on_bit_lock+0x2f/0x5a
[42949373.720000] 08bcfbfc:  [<080915c3>] __lock_page+0x54/0x5d
[42949373.720000] 08bcfc34:  [<08092331>] filemap_nopage+0x1c7/0x259
[42949373.720000] 08bcfc60:  [<0809bb4a>] do_no_page+0x6f/0x272
[42949373.720000] 08bcfc98:  [<0809bef5>] __handle_mm_fault+0xa7/0x180
[42949373.720000] 08bcfcc8:  [<0805aa0a>] handle_page_fault+0xe2/0x1c2
[42949373.720000] 08bcfcfc:  [<0805bb85>] maybe_map+0x51/0x83
[42949373.720000] 08bcfd30:  [<0805bbc9>] do_op_one_page+0x12/0x6d
[42949373.720000] 08bcfd48:  [<0805bcae>] do_buffer_op+0x8a/0x11f
[42949373.720000] 08bcfd88:  [<08068b65>] setjmp_wrapper+0x3c/0x45
[42949373.720000] 08bcfdbc:  [<0805bd6a>] buffer_op+0x27/0x52
[42949373.720000] 08bcfdf0:  [<0805c072>] clear_user_skas+0x67/0x75
[42949373.720000] 08bcfe18:  [<080cf599>] padzero+0x1e/0x2f
[42949373.720000] 08bcfe28:  [<080cfcbd>] load_elf_interp+0x1c2/0x255
[42949373.720000] 08bcfe5c:  [<080d06f2>] load_elf_binary+0x7fd/0xb57
[42949373.720000] 08bcfee0:  [<080ae741>] search_binary_handler+0x60/0x170
[42949373.720000] 08bcff04:  [<080ae998>] do_execve+0x147/0x1cb
[42949373.720000] 08bcff24:  [<08057ced>] execve1+0x2a/0x54
[42949373.720000] 08bcff48:  [<08057d2c>] um_execve+0x15/0x41
[42949373.720000] 08bcff64:  [<08059e25>] kernel_execve+0x2c/0x37
[42949373.720000] 08bcff84:  [<080576cf>] run_init_process+0x1b/0x20
[42949373.720000] 08bcff98:  [<08057764>] init_post+0x90/0xb8
[42949373.720000] 08bcffa4:  [<08049879>] kernel_init+0x7e/0x85
[42949373.720000] 08bcffb4:  [<08067315>] run_kernel_thread+0x37/0x42
[42949373.720000] 08bcffe0:  [<0805b49d>] new_thread_handler+0x57/0x7e
[42949373.720000] 08bcfffc:  [<a55a5a5a>] 0xa55a5a5a
[42949373.720000]
Fallo de segmentación

Notice that the virtual machine started using root_fs (without cow
functionality) starts OK

My system is

jon at realbox:~$ lsb_release -rd
Description:    Ubuntu 8.10
Release:        8.10
jon at realbox:~$

Packet version:

jon at realbox:~$jon at realbox:~$ dpkg -l | egrep "uml|user-mode-linux"
ii  uml-utilities                              20070815-1.1                            User-mode Linux (utility programs)
ii  user-mode-linux                            2.6.22-2um-0ubuntu2                     User-mode Linux (kernel)
jon at realbox:~$

Best regards,

** Affects: user-mode-linux (Ubuntu)
     Importance: Undecided
         Status: New

-- 
limit request size on COWed devices
https://bugs.launchpad.net/bugs/338795
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs at lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs


More information about the universe-bugs mailing list