[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Proposed aufs3 vs. arm64 fix



On Sun, 2014-07-20 at 01:53 +0100, Ben Hutchings wrote:

Thanks for the review.

Upstream is mulling a different approach (moving the functions to a
new .c file) but I don't think I'm going to have time to implement that
today before the ABI bump upload this evening (we've got family
visiting). I mention it because I suspect that approach will have yet
another ABI. I'll see what I can so though...

For now I've fixed the issues you mentioned in our svn.

Ian.

> On Fri, 2014-07-18 at 22:35 +0100, Ian Campbell wrote:
> [...]
> > -static inline void vmr_do_fput(struct vm_region *region,
> > -			       const char func[], int line)
> > -{
> > -	struct file *f = region->vm_file, *pr = region->vm_prfile;
> > -	aufs_trace(f, pr, func, line, __func__);
> > -	fput(f);
> > -	if (f && pr)
> > -		fput(pr);
> > -}
> > +#define vmr_pr_or_file(region)		vmr_do_pr_or_file(region, __func__, \
> > +							  __LINE__)
> >  
> > -static inline void vma_do_file_update_time(struct vm_area_struct *vma,
> > -					   const char func[], int line)
> > -{
> > -	struct file *f = vma->vm_file, *pr = vma->vm_prfile;
> > -	aufs_trace(f, pr, func, line, __func__);
> > -	file_update_time(f);
> > -	if (f && pr)
> > -		file_update_time(pr);
> > -}
> > +#define vmr_fput(_region) do {						\
> > +	struct vm_region *region = _region;				\
> 
> Parentheses around _region.
> 
> > +	struct file *f = region->vm_file, *pr = region->vm_prfile;	\
> > +	aufs_trace(f, pr, __func__, __LINE__, vmr_fput);		\
> 
> Last argument needs to be quoted (but this is #ifndef CONFIG_MMU... who
> cares).
> 
> > +	fput(f);							\
> > +	if (f && pr)							\
> > +		fput(pr);						\
> > +} while(0);
> > +
> > +#endif
> > +
> > +#define vma_file_update_time(_vma) {				\
> > +	struct vm_area_struct *vma = _vma;			\
> [...]
> 
> Same for _vma (and in the other macros below).
> 
> Ben.
> 



Reply to: