# Re: \[PATCH v5 4/5\] fs, xfs: introduce MAP\_DIRECT for creating block-map-atomic file ranges

- From: Dan Williams \<hidden\>
- Date: 2017-08-16 16:32:48 
- List: linux-api
- Page: https://ratatoskr.run/linux-api/2017/08/125036
- Thread: https://ratatoskr.run/linux-api/2017/08/125029/t.md

```text
On Wed, Aug 16, 2017 at 9:29 AM, Dan Williams [ref] wrote:
> On Wed, Aug 16, 2017 at 4:12 AM, Kirill A. Shutemov
> [ref] wrote:
>> On Wed, Aug 16, 2017 at 12:44:28AM -0700, Dan Williams wrote:
>>> @@ -1411,6 +1422,9 @@ unsigned long do_mmap(struct file *file, unsigned long addr,
>>>
>>>                       /* fall through */
>>>               case MAP_PRIVATE:
>>> +                     if ((flags & (MAP_PRIVATE|MAP_DIRECT))
>>> +                                     == (MAP_PRIVATE|MAP_DIRECT))
>>> +                             return -EINVAL;
>>
>> We've already checked for MAP_PRIVATE in this codepath. Simple (flags &
>> MAP_DIRECT) would be enough.
>
> True, willl fix.

Actually, no, because of the fallthrough we need to check MAP_SHARED
or MAP_PRIVATE along with MAP_DIRECT.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
```
