From owner-freebsd-current@FreeBSD.ORG Wed Jul 10 23:36:23 2013 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id E904DAAC for ; Wed, 10 Jul 2013 23:36:23 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-qa0-x233.google.com (mail-qa0-x233.google.com [IPv6:2607:f8b0:400d:c00::233]) by mx1.freebsd.org (Postfix) with ESMTP id B2D02116F for ; Wed, 10 Jul 2013 23:36:23 +0000 (UTC) Received: by mail-qa0-f51.google.com with SMTP id f11so3888201qae.17 for ; Wed, 10 Jul 2013 16:36:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:date:x-google-sender-auth:message-id:subject :from:to:content-type; bh=dqEipT5hLdN2gF0Mm3cS3Mfwdkpd18wFP7LgaBLJSgU=; b=CY7OfaV3ik1tW7GECeC+oZhR7h0QIYzMZdQzyVYiKK7YDPUGSolSJAIi5m1HOEAvQ/ L4e/wyoC907nHkjsAX5+RiMuJ9TkuiNDjZVeCEts06omaBhKlzHXab8iPHgJ4tIABzgA TmxxeLTfpkfp/uZ3F0IWmvR3sE2eewDlfNGd9EBaoL6Dm0KeOXsjnqJiubwE8kWIeoC3 ricD+bcTegEdrGQLtsAIJKTGNc5k7ybP725zfXOew0Yb5PmY23Eg5jHnT4OcYEdxVOa0 iUi7z5xDDXHH33u8+H6EiQ3xboTHn6EzfFNK4o8r+kKzoYt3950WqxZNbVU8m1YMYn9q pAiQ== MIME-Version: 1.0 X-Received: by 10.224.26.7 with SMTP id b7mr29988370qac.102.1373499383272; Wed, 10 Jul 2013 16:36:23 -0700 (PDT) Sender: adrian.chadd@gmail.com Received: by 10.224.195.72 with HTTP; Wed, 10 Jul 2013 16:36:23 -0700 (PDT) Date: Wed, 10 Jul 2013 16:36:23 -0700 X-Google-Sender-Auth: P3uDhsmF-4Tl9W0BwNv6i8pmabo Message-ID: Subject: hacking - aio_sendfile() From: Adrian Chadd To: freebsd-current Content-Type: text/plain; charset=ISO-8859-1 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Jul 2013 23:36:24 -0000 Hiya, I've started writing an aio_sendfile() syscall. http://people.freebsd.org/~adrian/ath/20130710-aio-sendfile-3.diff Yes, the diff is against -HEAD and not stable/9. It's totally horrible, hackish and likely bad. I've only done some very, very basic testing to ensure it actually works; i haven't at all stress tested it out yet. It's also very naive - I'm not at all doing any checks to see whether I can short-cut to do the aio there and then; I'm always queuing the sendfile() op through the worker threads. That's likely stupid and inefficient in a lot of cases, but it at least gets the syscall up and working. I'd like some feedback and possibly some help in stress testing it to make sure it's functioning well. Thanks, -adrian