From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Chinner Subject: Re: [PATCH 2/2] xfs: add FALLOC_FL_ZERO_RANGE to fallocate Date: Thu, 14 Jun 2012 09:52:56 +1000 Message-ID: <20120613235256.GX22848@dastard> References: <1339515364-17374-1-git-send-email-pbonzini@redhat.com> <1339515364-17374-3-git-send-email-pbonzini@redhat.com> <20120613021610.GQ22848@dastard> <4FD8320C.1060308@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, Dave Chinner , xfs@oss.sgi.com To: Paolo Bonzini Return-path: Content-Disposition: inline In-Reply-To: <4FD8320C.1060308@redhat.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org On Wed, Jun 13, 2012 at 08:24:12AM +0200, Paolo Bonzini wrote: > Il 13/06/2012 04:16, Dave Chinner ha scritto: > >> > + BUG_ON((mode & FALLOC_FL_PUNCH_HOLE) && (mode & FALLOC_FL_ZERO_RANGE)); > > Never put BUG_ON() or BUG() in XFS code that can return an error. > > Return EINVAL if we chose not to support it, and if it's really > > something we consider bad, emit a warning to syslog (i.e. > > xfs_warn()) and potentially add a ASSERT() case so that debug > > kernels will trip over it. Nobody should be panicing a production > > system just because a user supplied a set of incorrect syscall > > paramters.... > > I know, the BUG_ON() is because it is ruled out in VFS code. Of course > if I remove that code, this will not be a BUG_ON() anymore. If we put a BUG_ON() for every condition the VFS checked in every filesystem, we'd have so many BUG_ON checks we wouldn't be able to find the code. If it's banned at the VFS, there's no need to assert that inthe filesystem code.... Cheers, Dave. -- Dave Chinner david@fromorbit.com