138a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin/* 238a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * Copyright (c) 2013 William Manley <william.manley@youview.com> 338a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * Copyright (c) 2014-2015 Dmitry V. Levin <ldv@altlinux.org> 438a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * All rights reserved. 538a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * 638a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * Redistribution and use in source and binary forms, with or without 738a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * modification, are permitted provided that the following conditions 838a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * are met: 938a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * 1. Redistributions of source code must retain the above copyright 1038a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * notice, this list of conditions and the following disclaimer. 1138a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * 2. Redistributions in binary form must reproduce the above copyright 1238a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * notice, this list of conditions and the following disclaimer in the 1338a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * documentation and/or other materials provided with the distribution. 1438a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * 3. The name of the author may not be used to endorse or promote products 1538a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * derived from this software without specific prior written permission. 1638a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * 1738a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 1838a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 1938a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 2038a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 2138a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 2238a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 2338a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 2438a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 2538a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 2638a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 2738a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin */ 2838a34c9349267c99ce1ddbd0b6e985147415d355Dmitry V. Levin 29710b3ae4a29941777c7cba2891a30a8309617f20Dmitry V. Levin#include "defs.h" 30710b3ae4a29941777c7cba2891a30a8309617f20Dmitry V. Levin#include <fcntl.h> 31710b3ae4a29941777c7cba2891a30a8309617f20Dmitry V. Levin#include "xlat/sync_file_range_flags.h" 32710b3ae4a29941777c7cba2891a30a8309617f20Dmitry V. Levin 33a0bd3749fc6fdf6364c1e269a4c02e8c153eb84bDmitry V. LevinSYS_FUNC(sync_file_range) 34710b3ae4a29941777c7cba2891a30a8309617f20Dmitry V. Levin{ 35d6ed7948f77fb65fec67efd2685569fdb5910c74Dmitry V. Levin int argn; 36d6ed7948f77fb65fec67efd2685569fdb5910c74Dmitry V. Levin 37d6ed7948f77fb65fec67efd2685569fdb5910c74Dmitry V. Levin printfd(tcp, tcp->u_arg[0]); 38d6ed7948f77fb65fec67efd2685569fdb5910c74Dmitry V. Levin argn = printllval(tcp, ", %lld, ", 1); 39d6ed7948f77fb65fec67efd2685569fdb5910c74Dmitry V. Levin argn = printllval(tcp, "%lld, ", argn); 40d6ed7948f77fb65fec67efd2685569fdb5910c74Dmitry V. Levin printflags(sync_file_range_flags, tcp->u_arg[argn], 41d6ed7948f77fb65fec67efd2685569fdb5910c74Dmitry V. Levin "SYNC_FILE_RANGE_???"); 42d6ed7948f77fb65fec67efd2685569fdb5910c74Dmitry V. Levin 43d6ed7948f77fb65fec67efd2685569fdb5910c74Dmitry V. Levin return RVAL_DECODED; 44710b3ae4a29941777c7cba2891a30a8309617f20Dmitry V. Levin} 45