Don't sync before exiting drivers.
Wipe inodes of pipes in truncate_inode(), to avoid the size remaining at PIPE_SIZE causing pipes to break.
This commit is contained in:
		
							parent
							
								
									88ba4b5268
								
							
						
					
					
						commit
						b9bdbcba1b
					
				@ -404,6 +404,7 @@ off_t newsize;			/* inode must become this size */
 | 
			
		||||
 | 
			
		||||
  /* Next correct the inode size. */
 | 
			
		||||
  if(!waspipe) rip->i_size = newsize;
 | 
			
		||||
  else wipe_inode(rip);	/* Pipes can only be truncated to 0. */
 | 
			
		||||
  rip->i_dirt = DIRTY;
 | 
			
		||||
 | 
			
		||||
  return OK;
 | 
			
		||||
 | 
			
		||||
@ -258,9 +258,6 @@ PUBLIC int do_reboot()
 | 
			
		||||
  /* Only PM may make this call directly. */
 | 
			
		||||
  if (who != PM_PROC_NR) return(EGENERIC);
 | 
			
		||||
 | 
			
		||||
  /* Sync before the drivers die. */
 | 
			
		||||
  do_sync();
 | 
			
		||||
 | 
			
		||||
  /* Do exit processing for all leftover processes and servers. */
 | 
			
		||||
  for (i = 0; i < NR_PROCS; i++) { m_in.slot1 = i; do_exit(); }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user