linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/47] Lustre fixes and cleanups
@ 2014-04-27 17:06 Oleg Drokin
  2014-04-27 17:06 ` [PATCH 01/47] staging/lustre/ptlrpc: Fix assertion failure of null_alloc_rs() Oleg Drokin
                   ` (47 more replies)
  0 siblings, 48 replies; 65+ messages in thread
From: Oleg Drokin @ 2014-04-27 17:06 UTC (permalink / raw)
  To: Greg Kroah-Hartman, linux-kernel, devel; +Cc: Oleg Drokin

Hello!

   This pile of patches brings in most of the recent fixes from
   current Lustre development tree, also code cleanups, junk removal
   and such.
   A relatively unsynced area remaining is in client io stack
   that is undergoing some major shakeups now, I'll try to tackle
   it later once things actually settle down some more.

   There are several checkpatch warnings in this patchset that
   I am not sure what to do aobut since the messages printed are
   genuinely long:

WARNING: quoted string split across lines
#61: FILE: drivers/staging/lustre/lustre/ptlrpc/import.c:1424:
+		CERROR("%s: don't know how to disconnect from %s "
+		       "(connect_op %d): rc = %d\n",

total: 0 errors, 1 warnings, 73 lines checked

0009-staging-lustre-ptlrpc-don-t-try-to-recover-no_recov-.patch has style problems, please review.

WARNING: quoted string split across lines
#311: FILE: drivers/staging/lustre/lustre/lov/lov_ea.c:352:
+	CDEBUG(level, "lsm %p, objid "DOSTID", maxbytes "LPX64", magic 0x%08X,"
+	       " stripe_size %u, stripe_count %u, refc: %d,"

WARNING: quoted string split across lines
#312: FILE: drivers/staging/lustre/lustre/lov/lov_ea.c:353:
+	       " stripe_size %u, stripe_count %u, refc: %d,"
+	       " layout_gen %u, pool ["LOV_POOLNAMEF"]\n", lsm,

total: 0 errors, 2 warnings, 337 lines checked
0016-staging-lustre-obdclass-remove-uses-of-lov_stripe_md.patch has style problems, please review.

WARNING: line over 80 characters
#110: FILE: drivers/staging/lustre/lustre/llite/statahead.c:1311:
+			CDEBUG(D_READA, "stop statahead thread: sai %p pid %u\n",

WARNING: quoted string split across lines
#120: FILE: drivers/staging/lustre/lustre/llite/statahead.c:1486:
 			       ", sent/replied "LPU64"/"LPU64", stopping "
+			       "statahead thread\n",

total: 0 errors, 2 warnings, 94 lines checked

0025-stagaing-lustre-Improve-statahead-debug-messages.patch has style problems, please review.

WARNING: quoted string split across lines
#43: FILE: drivers/staging/lustre/lustre/llite/llite_lib.c:2461:
+	       "%s: dirty page discard: %s/fid: "DFID"/%s may get corrupted "
+	       "(rc %d)\n", ll_get_fsname(page->mapping->host->i_sb, NULL, 0),

total: 0 errors, 1 warnings, 17 lines checked

0037-staging-lustre-llite-Do-not-rate-limit-dirty-page-di.patch has style problems, please review.


  Please consider for merging.

Bye,
    Oleg
Andreas Dilger (4):
  staging/lustre/ptlrpc: don't try to recover no_recov connection
  staging/lustre: quiet console permission error messages
  staging/lustre: shrink lu_object_header by 8 bytes on x86_64
  staging/lustre: pass fsync() range through RPC/IO stack

Andrew Korty (2):
  staging/lustre/gss: gssnull security flavor
  staging/lustre/gss: Shared key mechanism & flavors

Andriy Skulysh (1):
  staging/lustre/ptlrpc: add rpc_cache

Ann Koehler (1):
  staging/lustre: restore __GFP_WAIT flag to memalloc calls

Bob Glossman (1):
  staging/lustre/lloop: avoid panic during blockdev_info

Bobi Jam (3):
  staging/lustre/llite: issue OST_SYNC for fsync()
  staging/lustre/llite: deadlock taking lli_trunc_sem during file write
  staging/lustre/llite: prevent buffer overflow in fiemap

Brian Behlendorf (1):
  staging/lustre: Limit reply buffer size

Cheng Shao (1):
  staging/lustre/ptlrpc: Remove log message about export timer update

Christopher J. Morrone (2):
  staging/lustre/llite: Avoid statahead thread start/stop deadlocks
  stagaing/lustre: Improve statahead debug messages

Dmitry Eremin (8):
  staging/lustre/gss: fix few issues found by Klocwork Insight tool
  staging/lustre/gss: fix uninitialized variable
  staging/lustre/ldlm: fix NULL pointer dereference
  staging/lustre/lnet: lnet: fix issues found by Klocwork Insight tool
  staging/lustre/mdc: fix issue found by Klocwork Insight tool
  staging/lustre/libcfs: fix issues found by Klocwork Insight tool
  staging/lustre: replace semaphores with mutexes
  staging/lustre/clio: replace semaphore with mutex

Hongchao Zhang (1):
  staging/lustre/osc: don't activate deactivated obd_import

James Nunez (1):
  staging/lustre/hsm: HSM requests not delivered

Jinshan Xiong (3):
  staging/lustre/lov: to not hold sub locks at initialization
  staging/lustre/llite: access layout version under a lock
  staging/lustre/clio: Solve a race in cl_lock_put

John L. Hammond (4):
  staging/lustre/lov: remove unused lov llog code
  staging/lustre/obdclass: remove uses of lov_stripe_md
  staging/lustre: remove lustre/include/ioctl.h
  staging/lustre/llite: remove dead code

Li Xi (4):
  staging/lustre/ldlm: Hold lock when clearing flag
  staging/lustre: fix permission problem of setfacl
  staging/lustre/libcfs: add CPU table functions for uniprocessor
  staging/lustre: remove assertion of spin_is_locked()

Liang Zhen (1):
  staging/lustre/lnet: NI shutdown may loop forever

Matt Ezell (1):
  staging/lustre/lnet: Dropped messages are not accounted correctly

Niu Yawei (1):
  staging/lustre/clio: clear nowait flag agl lock re-enqueue

Oleg Drokin (1):
  staging/lustre: Fix unsafe userspace access in many proc files

Patrick Farrell (1):
  staging/lustre/ptlrpc: Fix assertion failure of null_alloc_rs()

Peng Tao (1):
  staging/lustre/hsm: count NULL terminator in hai_zero/hal_size

Ryan Haasken (2):
  staging/lustre/llite: Do not rate limit dirty page discard warning
  staging/lustre: Always clamp cdls_delay between min and max

Swapnil Pimpale (1):
  staging/lustre/osc: Update inode timestamp for lockless IO as well

wang di (1):
  staging/lustre/mdc: use cl_max_mds_md to pack getattr RPC

 .../lustre/include/linux/libcfs/libcfs_cpu.h       |   5 +
 .../lustre/include/linux/libcfs/libcfs_private.h   |   4 +-
 .../lustre/include/linux/libcfs/linux/linux-lock.h |   2 +-
 .../lustre/include/linux/libcfs/linux/linux-mem.h  |   5 +
 .../staging/lustre/lnet/klnds/o2iblnd/o2iblnd.c    |   2 +-
 .../staging/lustre/lnet/klnds/o2iblnd/o2iblnd_cb.c |   8 +-
 .../staging/lustre/lnet/klnds/socklnd/socklnd.c    |   4 +-
 drivers/staging/lustre/lnet/lnet/api-ni.c          |  15 +-
 drivers/staging/lustre/lnet/lnet/router.c          |   3 +-
 drivers/staging/lustre/lnet/selftest/conctl.c      |  11 +-
 drivers/staging/lustre/lnet/selftest/framework.c   |  14 +-
 drivers/staging/lustre/lustre/fid/lproc_fid.c      |  41 +++-
 drivers/staging/lustre/lustre/include/dt_object.h  |   9 +-
 drivers/staging/lustre/lustre/include/ioctl.h      | 106 --------
 drivers/staging/lustre/lustre/include/lu_object.h  |   8 +-
 .../lustre/lustre/include/lustre/lustre_idl.h      |  28 ++-
 .../lustre/lustre/include/lustre/lustre_user.h     |   5 +-
 .../staging/lustre/lustre/include/lustre_debug.h   |   1 -
 drivers/staging/lustre/lustre/include/lustre_dlm.h |   2 +-
 drivers/staging/lustre/lustre/include/lustre_lib.h |  13 -
 drivers/staging/lustre/lustre/include/lustre_log.h |  10 -
 drivers/staging/lustre/lustre/include/lustre_mdc.h |  23 +-
 drivers/staging/lustre/lustre/include/lustre_net.h |   4 +-
 drivers/staging/lustre/lustre/include/lustre_sec.h |  25 ++
 drivers/staging/lustre/lustre/include/obd.h        |  24 +-
 drivers/staging/lustre/lustre/include/obd_class.h  |  16 +-
 drivers/staging/lustre/lustre/include/obd_lov.h    | 116 ---------
 .../staging/lustre/lustre/include/obd_support.h    |  10 +-
 drivers/staging/lustre/lustre/lclient/lcommon_cl.c |  17 +-
 .../staging/lustre/lustre/lclient/lcommon_misc.c   |  15 +-
 drivers/staging/lustre/lustre/ldlm/ldlm_extent.c   |   2 +-
 drivers/staging/lustre/lustre/ldlm/ldlm_lib.c      |   4 +-
 drivers/staging/lustre/lustre/ldlm/ldlm_lock.c     |  10 +-
 drivers/staging/lustre/lustre/ldlm/ldlm_resource.c |   2 +-
 drivers/staging/lustre/lustre/libcfs/libcfs_cpu.c  |  21 ++
 .../staging/lustre/lustre/libcfs/linux/linux-cpu.c |  18 +-
 drivers/staging/lustre/lustre/libcfs/nidstrings.c  |  12 +-
 drivers/staging/lustre/lustre/libcfs/tracefile.c   |  10 +-
 drivers/staging/lustre/lustre/llite/dcache.c       |  26 +-
 drivers/staging/lustre/lustre/llite/dir.c          |  15 +-
 drivers/staging/lustre/lustre/llite/file.c         | 148 ++++++-----
 drivers/staging/lustre/lustre/llite/llite_capa.c   |   4 +-
 .../staging/lustre/lustre/llite/llite_internal.h   | 177 ++++----------
 drivers/staging/lustre/lustre/llite/llite_lib.c    | 135 +++++-----
 drivers/staging/lustre/lustre/llite/llite_mmap.c   |  23 +-
 drivers/staging/lustre/lustre/llite/llite_nfs.c    |   4 +-
 drivers/staging/lustre/lustre/llite/lloop.c        |  10 +-
 drivers/staging/lustre/lustre/llite/lproc_llite.c  | 149 +++++++++--
 drivers/staging/lustre/lustre/llite/namei.c        |  40 +--
 drivers/staging/lustre/lustre/llite/remote_perm.c  |   2 +-
 drivers/staging/lustre/lustre/llite/rw.c           |   7 -
 drivers/staging/lustre/lustre/llite/rw26.c         |  15 +-
 drivers/staging/lustre/lustre/llite/statahead.c    |  68 +++---
 drivers/staging/lustre/lustre/llite/super25.c      |   9 +-
 drivers/staging/lustre/lustre/llite/vvp_dev.c      |  10 +-
 drivers/staging/lustre/lustre/llite/vvp_internal.h |   2 +-
 drivers/staging/lustre/lustre/llite/vvp_io.c       |   4 +-
 drivers/staging/lustre/lustre/llite/vvp_object.c   |  35 ++-
 drivers/staging/lustre/lustre/llite/xattr.c        |   5 +
 drivers/staging/lustre/lustre/llite/xattr_cache.c  |   4 +-
 drivers/staging/lustre/lustre/lmv/lmv_obd.c        |  25 +-
 drivers/staging/lustre/lustre/lov/Makefile         |   2 +-
 drivers/staging/lustre/lustre/lov/lov_dev.c        |   6 +-
 drivers/staging/lustre/lustre/lov/lov_ea.c         |  14 +-
 drivers/staging/lustre/lustre/lov/lov_internal.h   |  37 ++-
 drivers/staging/lustre/lustre/lov/lov_lock.c       |  42 +---
 drivers/staging/lustre/lustre/lov/lov_log.c        | 272 ---------------------
 drivers/staging/lustre/lustre/lov/lov_merge.c      |   6 +-
 drivers/staging/lustre/lustre/lov/lov_obd.c        |  21 +-
 drivers/staging/lustre/lustre/lov/lov_object.c     |   3 +-
 drivers/staging/lustre/lustre/lov/lov_offset.c     |   1 -
 drivers/staging/lustre/lustre/lov/lov_pack.c       |  10 +-
 drivers/staging/lustre/lustre/lov/lov_request.c    |   1 -
 drivers/staging/lustre/lustre/lov/lovsub_dev.c     |   2 +-
 drivers/staging/lustre/lustre/lov/lovsub_lock.c    |   2 +-
 drivers/staging/lustre/lustre/lov/lovsub_object.c  |   2 +-
 drivers/staging/lustre/lustre/mdc/mdc_locks.c      |  23 +-
 drivers/staging/lustre/lustre/mdc/mdc_reint.c      |  11 +-
 drivers/staging/lustre/lustre/mdc/mdc_request.c    |  49 +++-
 drivers/staging/lustre/lustre/mgc/mgc_request.c    |   8 +-
 drivers/staging/lustre/lustre/obdclass/cl_lock.c   |  14 +-
 drivers/staging/lustre/lustre/obdclass/cl_object.c |   6 +-
 drivers/staging/lustre/lustre/obdclass/cl_page.c   |   4 +-
 drivers/staging/lustre/lustre/obdclass/debug.c     |  12 -
 drivers/staging/lustre/lustre/obdclass/genops.c    |   2 +-
 .../lustre/lustre/obdclass/linux/linux-module.c    |   9 +-
 drivers/staging/lustre/lustre/obdclass/llog_obd.c  |  29 +--
 .../staging/lustre/lustre/obdecho/echo_client.c    |   9 +-
 drivers/staging/lustre/lustre/osc/lproc_osc.c      |  16 +-
 drivers/staging/lustre/lustre/osc/osc_cache.c      |   4 +-
 .../staging/lustre/lustre/osc/osc_cl_internal.h    |   9 +
 drivers/staging/lustre/lustre/osc/osc_dev.c        |   4 +-
 drivers/staging/lustre/lustre/osc/osc_io.c         |  28 +--
 drivers/staging/lustre/lustre/osc/osc_lock.c       |   3 +-
 drivers/staging/lustre/lustre/osc/osc_object.c     |   2 +-
 drivers/staging/lustre/lustre/osc/osc_request.c    |   1 -
 drivers/staging/lustre/lustre/ptlrpc/client.c      |  50 +++-
 drivers/staging/lustre/lustre/ptlrpc/events.c      |   2 +-
 drivers/staging/lustre/lustre/ptlrpc/gss/Makefile  |   3 +-
 .../staging/lustre/lustre/ptlrpc/gss/gss_bulk.c    |  12 +-
 .../lustre/lustre/ptlrpc/gss/gss_internal.h        |   7 +
 .../lustre/lustre/ptlrpc/gss/gss_krb5_mech.c       |   1 +
 .../lustre/lustre/ptlrpc/gss/gss_null_mech.c       | 195 +++++++++++++++
 .../staging/lustre/lustre/ptlrpc/gss/gss_pipefs.c  |   4 +-
 .../staging/lustre/lustre/ptlrpc/gss/gss_sk_mech.c | 226 +++++++++++++++++
 drivers/staging/lustre/lustre/ptlrpc/gss/sec_gss.c |  16 +-
 drivers/staging/lustre/lustre/ptlrpc/import.c      |  36 ++-
 .../staging/lustre/lustre/ptlrpc/lproc_ptlrpc.c    |   2 +-
 drivers/staging/lustre/lustre/ptlrpc/nrs.c         |   2 +-
 .../staging/lustre/lustre/ptlrpc/pack_generic.c    |   1 +
 drivers/staging/lustre/lustre/ptlrpc/pinger.c      |   2 +-
 .../staging/lustre/lustre/ptlrpc/ptlrpc_internal.h |   4 +
 .../staging/lustre/lustre/ptlrpc/ptlrpc_module.c   |  32 ++-
 drivers/staging/lustre/lustre/ptlrpc/recover.c     |   6 +-
 drivers/staging/lustre/lustre/ptlrpc/sec.c         |  34 ++-
 drivers/staging/lustre/lustre/ptlrpc/sec_bulk.c    |   4 +-
 drivers/staging/lustre/lustre/ptlrpc/service.c     |  20 +-
 117 files changed, 1509 insertions(+), 1356 deletions(-)
 delete mode 100644 drivers/staging/lustre/lustre/include/ioctl.h
 delete mode 100644 drivers/staging/lustre/lustre/include/obd_lov.h
 delete mode 100644 drivers/staging/lustre/lustre/lov/lov_log.c
 create mode 100644 drivers/staging/lustre/lustre/ptlrpc/gss/gss_null_mech.c
 create mode 100644 drivers/staging/lustre/lustre/ptlrpc/gss/gss_sk_mech.c

-- 
1.8.5.3


^ permalink raw reply	[flat|nested] 65+ messages in thread

end of thread, other threads:[~2014-04-30  8:03 UTC | newest]

Thread overview: 65+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-04-27 17:06 [PATCH 00/47] Lustre fixes and cleanups Oleg Drokin
2014-04-27 17:06 ` [PATCH 01/47] staging/lustre/ptlrpc: Fix assertion failure of null_alloc_rs() Oleg Drokin
2014-04-27 17:06 ` [PATCH 02/47] staging/lustre/ptlrpc: Remove log message about export timer update Oleg Drokin
2014-04-27 17:06 ` [PATCH 03/47] staging/lustre/gss: gssnull security flavor Oleg Drokin
2014-04-27 17:06 ` [PATCH 04/47] staging/lustre/gss: Shared key mechanism & flavors Oleg Drokin
2014-04-27 17:20   ` Greg Kroah-Hartman
2014-04-27 17:06 ` [PATCH 05/47] staging/lustre/osc: don't activate deactivated obd_import Oleg Drokin
2014-04-27 17:06 ` [PATCH 06/47] staging/lustre/lnet: Dropped messages are not accounted correctly Oleg Drokin
2014-04-27 17:06 ` [PATCH 07/47] staging/lustre/ldlm: Hold lock when clearing flag Oleg Drokin
2014-04-27 17:06 ` [PATCH 08/47] staging/lustre/clio: clear nowait flag agl lock re-enqueue Oleg Drokin
2014-04-27 17:06 ` [PATCH 09/47] staging/lustre/ptlrpc: don't try to recover no_recov connection Oleg Drokin
2014-04-27 17:06 ` [PATCH 10/47] staging/lustre/gss: fix few issues found by Klocwork Insight tool Oleg Drokin
2014-04-27 17:06 ` [PATCH 11/47] staging/lustre/ptlrpc: add rpc_cache Oleg Drokin
2014-04-29  9:46   ` Dan Carpenter
2014-04-30  3:22     ` Oleg Drokin
2014-04-27 17:06 ` [PATCH 12/47] staging/lustre: restore __GFP_WAIT flag to memalloc calls Oleg Drokin
2014-04-27 17:06 ` [PATCH 13/47] staging/lustre/gss: fix uninitialized variable Oleg Drokin
2014-04-27 17:06 ` [PATCH 14/47] staging/lustre: quiet console permission error messages Oleg Drokin
2014-04-27 17:06 ` [PATCH 15/47] staging/lustre/lov: remove unused lov llog code Oleg Drokin
2014-04-27 17:06 ` [PATCH 16/47] staging/lustre/obdclass: remove uses of lov_stripe_md Oleg Drokin
2014-04-27 17:06 ` [PATCH 17/47] staging/lustre/hsm: count NULL terminator in hai_zero/hal_size Oleg Drokin
2014-04-27 17:06 ` [PATCH 18/47] staging/lustre/hsm: HSM requests not delivered Oleg Drokin
2014-04-29  9:08   ` Dan Carpenter
2014-04-30  3:31     ` Oleg Drokin
2014-04-27 17:06 ` [PATCH 19/47] staging/lustre: fix permission problem of setfacl Oleg Drokin
2014-04-27 17:06 ` [PATCH 20/47] staging/lustre/llite: issue OST_SYNC for fsync() Oleg Drokin
2014-04-27 17:06 ` [PATCH 21/47] staging/lustre/llite: deadlock taking lli_trunc_sem during file write Oleg Drokin
2014-04-27 17:06 ` [PATCH 22/47] staging/lustre/lov: to not hold sub locks at initialization Oleg Drokin
2014-04-27 17:06 ` [PATCH 23/47] staging/lustre: Limit reply buffer size Oleg Drokin
2014-04-27 17:06 ` [PATCH 24/47] staging/lustre/llite: Avoid statahead thread start/stop deadlocks Oleg Drokin
2014-04-27 17:06 ` [PATCH 25/47] stagaing/lustre: Improve statahead debug messages Oleg Drokin
2014-04-27 17:06 ` [PATCH 26/47] staging/lustre/llite: access layout version under a lock Oleg Drokin
2014-04-27 17:06 ` [PATCH 27/47] staging/lustre: shrink lu_object_header by 8 bytes on x86_64 Oleg Drokin
2014-04-27 17:06 ` [PATCH 28/47] staging/lustre/ldlm: fix NULL pointer dereference Oleg Drokin
2014-04-27 17:06 ` [PATCH 29/47] staging/lustre/lnet: lnet: fix issues found by Klocwork Insight tool Oleg Drokin
2014-04-27 17:25   ` Greg Kroah-Hartman
2014-04-27 17:06 ` [PATCH 30/47] staging/lustre/mdc: fix issue " Oleg Drokin
2014-04-29 10:20   ` Dan Carpenter
2014-04-27 17:06 ` [PATCH 31/47] staging/lustre/libcfs: fix issues " Oleg Drokin
2014-04-27 17:06 ` [PATCH 32/47] staging/lustre/lnet: NI shutdown may loop forever Oleg Drokin
2014-04-27 17:06 ` [PATCH 33/47] staging/lustre: remove lustre/include/ioctl.h Oleg Drokin
2014-04-27 17:06 ` [PATCH 34/47] staging/lustre/libcfs: add CPU table functions for uniprocessor Oleg Drokin
2014-04-29 10:35   ` Dan Carpenter
2014-04-27 17:06 ` [PATCH 35/47] staging/lustre: replace semaphores with mutexes Oleg Drokin
2014-04-27 17:07 ` [PATCH 36/47] staging/lustre/clio: replace semaphore with mutex Oleg Drokin
2014-04-27 17:07 ` [PATCH 37/47] staging/lustre/llite: Do not rate limit dirty page discard warning Oleg Drokin
2014-04-27 17:07 ` [PATCH 38/47] staging/lustre/lloop: avoid panic during blockdev_info Oleg Drokin
2014-04-27 17:07 ` [PATCH 39/47] staging/lustre/clio: Solve a race in cl_lock_put Oleg Drokin
2014-04-27 17:07 ` [PATCH 40/47] staging/lustre/mdc: use cl_max_mds_md to pack getattr RPC Oleg Drokin
2014-04-27 17:07 ` [PATCH 41/47] staging/lustre/llite: remove dead code Oleg Drokin
2014-04-29 11:02   ` Dan Carpenter
2014-04-29 19:16     ` Hammond, John
2014-04-29 20:17       ` Dan Carpenter
2014-04-30  3:21     ` Oleg Drokin
2014-04-30  8:01       ` Dan Carpenter
2014-04-29 11:12   ` Richard Weinberger
2014-04-27 17:07 ` [PATCH 42/47] staging/lustre: remove assertion of spin_is_locked() Oleg Drokin
2014-04-27 17:07 ` [PATCH 43/47] staging/lustre/osc: Update inode timestamp for lockless IO as well Oleg Drokin
2014-04-27 17:07 ` [PATCH 44/47] staging/lustre: Always clamp cdls_delay between min and max Oleg Drokin
2014-04-27 17:07 ` [PATCH 45/47] staging/lustre: pass fsync() range through RPC/IO stack Oleg Drokin
2014-04-27 17:07 ` [PATCH 46/47] staging/lustre: Fix unsafe userspace access in many proc files Oleg Drokin
2014-04-27 17:30   ` Greg Kroah-Hartman
2014-04-27 17:07 ` [PATCH 47/47] staging/lustre/llite: prevent buffer overflow in fiemap Oleg Drokin
2014-04-27 17:33 ` [PATCH 00/47] Lustre fixes and cleanups Greg Kroah-Hartman
2014-04-27 18:28   ` Oleg Drokin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).