ordering of dependancies caused ${DESTDIR}/include/afs to not exist in
time, masked if you built into an existing destdir. so let's make
the makefile simpler and more logically paraallel.
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
get missing backquote
get rid of cases where we'd end up with two / because of DESTDIR pasting
macroize calls to rm
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
get rid of another case of bogus trailing quoting
get rid of bogus ..'s
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
make the subdir buildable
at build time, create a subtree for use later which can be used to
build *only* kernel modules, but only for the afs sysname you were building
for in the first place currently.
with minor correction by shadow@dementia.org to install the module, but
we now create a loadable kernel module for dux
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
actually build afs.mod
====================
fix typo
clean up all the makefiles to remove bogus targets, eliminate trailing /
requirement from DESTDIR, avoid needing to pass things like DESTDIR around
between makefiles
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
remove bogus quoting
1. Version control (Win9x & Windows NT/2000)
NTMakefile.i386_win95 and NTMakefile.i386_nt40 added AFSPRODUCT_VERSION
variable, setting this will propagate through the software by setting
the product version for the installation and client dialog boxes. In
particular it will provide correct notification if Win2K installation is
being upgraded, reinstall or downgraded.
Version information shows up in the following ways:
Welcome dialog during installation
Properities page for Install.exe (Windows Installation routine)
Windows Add/Remove Dialogs application list
AFS Control Center and Client dialog boxes
See README-WIN9X.TXT or README-NT.TXT for further information on how to set thi
s
variable.
2. CellServDB (Win9x & Windows NT/2000)
The installer can choose between various sources for CellServDB:
a) Previous installed file, afsdcell.ini(WinNT/2000) or CellServDB(Win9x).
b) File that comes with the installation package (recent copy from grand.centra
l.org)
c) Download a the file from the Web (default http://grand.central.org/dl/cellse
rvdb/CellServDB).
d) Browse for a file
3. Drive Mapping (Win9x & Windows NT/2000)
The installer can choose up to two drive mappings during the installation
process. Default is map Z: to AFS root and U: to user home directory
4. Silent Running (Win9x & Windows NT/2000)
Setup.exe is capable of running silently (-s option); that is, it will use a pr
e-made
response script to drive its responses. You can also do a normal installation
with
the record option (-r) to build a sample response file.
The installation routine has been improved to accept a modified response file s
o the
administrator can setup up additional drive mappings including substituting the
user's
loggin name into the path. By using a text editor an administrator can setup a
variable
path name that includes %LOGINNAME% in a path statement. This variable will be
substituted for the current user's login name. (Only at installation time.)
For example: if an administrator wanted to install AFS client on a machine that
had the
following mappings:
Z:=/
U:=/afs/afscell.org/u/username
Q:=/afs/afscell.org/general
Then follow these steps:
a) run setup with -r option and specify install to record responses into file s
etup.iss
setup.exe -r -f1setup.iss
b) Follow normal installation responses
c) Edit the setup.iss response file by modifying the "DRIVEPATH section".
This response file could start off looking like this:
[DLG_DRIVEPATH-1]
Result=1
Drive_0=Z:
Path_0=/
Share_0=all
Drive_1=U:
Path_1=/afs/afscell.org/u/administrator
Share_1=home
Count=2
This section map would be changed to look like this:
[DLG_DRIVEPATH-1]
Result=1
Drive_0=Z:
Path_0=/
Share_0=all
Drive_1=U:
Path_1=/afs/afscell.org/u/%LOGINNAME%
Share_1=home
Drive_2=Q:
Path_2=/afs/afscell.org/general
Share_2=genrl
Count=3
d) Use the silent mode to install AFS (must log to windows as your user name e.
g. Frank)
setup.exe -s -f1setup.iss
HINT: Share name should be limited to 12 characters.
The response file terminate if the installation is in any way different; for
example,
the response is recorded on a clean machine and it is run on a system where
AFS
is already installed.
The execution is truly silent, except for a log file.
The last response is BootOption and if set to 1 it will reboot your machine!
Refer to additional documentation on silent/record in you Install Shield User's
Guide.
5. Fixed the Un-Installation bug that damaged the NetBT parameter registration. (Win2k/NT only)
6. Change Default selection for Win2000 to Client and Documentation only. (Win2
K/NT only)
The default installation is with Server and Control Center NOT selected.
7. Win9x Client Operation (Win9x only)
Win9x client has been changed to allow "connection" with out forcing
authentication. Previous implementation of the Win9x client had three steps to
the
connection process: 1) start client 2) obtain tokens 3) Map drives
The updated Win9x client can leave the username blank and select to Connect. T
herefore, only
the client will be started (without obtaining tokens). The user can still map
drives
(those that don't require authentication). This is particularity useful if you
want to
use a different routine to obtain authentication tokens or additional drive map
pings.
A command line option has also been added (-noid). This option Prevent selecti
on of
(Gray out) username/password. This will cause the client to start up without au
thentication.
By using both -noid and -connect allows the user to run the AFS client in login
script
that could provide Kerbos 5 authentication and addition drive mapping.
8. Installation (Win9x only)
Fix installation into paths that have space, e.g. \Program Files\Afscli
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
complete list in first message
"i think this was missed from a patch i sent a while back to cleanup
the iput() of afs inodes. i think the lock(vc->lock) needs to be in
osi_clear_inode() since osi_clear_inode is called a bit more often
than afs_delete_inode(). however, this like just might be uneeded
since no one has seen any problems apparently."
Thanks to shirsch@adelphia.net for mentioning something was added.
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
this leaked in, separate delta
====================
fix maxcro defn
bcopy, bcmp, bzero, index, rindex, you're all cut.
memcpy, memcmp, memset, strchr, strrchr, show us how it's done
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
fix reference to memset the right thing
====================
make change to arguments globally and not just for e.g. linux/darwin/fbsd
====================
fix a minor flub in how this was done
====================
correct another bad memcpy coversion
====================
fix up more inadvertant turds
====================
fix two errors found by chas williams
doesn't look like it should matter but we might as well try to stay consistent
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
remove extra tests
"no special instructions this time other than you need a rather recent
glibc (turbolinux beta5 or redhat 7.1) since the afs userland utilities
use ucontext() instead of setjmp()/longjmp(). this is probably the weakest
part of the port since lwp is somewhat difficult to test rigorously.
you can insmod the afs module now (and rmmod if you like) why so difficult?
function pointers are really pointers to a function descriptor that contains
the function pointer and global pointer. the syscall table (being written
in assembler) only contains function pointers. it doesnt setup the gp.
modules and kernels do not share the same gp. so if you want the syscall
to go to a module, you need to setup the gp and then call your module's
routine. be sure to restore the gp after returning from your routine :)
i also converted to the 'new style' module_init() -- only used on kernel
versions 2.4.0 and up. this does the right thing if you happen to be
linked directly with the kernel.
klog has been fixed (afs's crypt() function is sensitive to sizeof(long) --
des/crypt.c should probably use 'afs_int32', not 'long' or 'int')
in case it matters, my platform is a b3-stepping running beta5 of turbolinux."
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
don't leak into not ia64 port
"There appears to be a conflict between two vcache state flags:
CWritingUFS and CDCLock are both 0x200000. This patch moves
CDCLock to 0x2000000 (which I'm guessing was the intended value
from the position of that #define). It also reformats the block
of #define's to be consistent in number format and indentation,
to make it somewhat more readable, and to make such conflicts
less likely to reappear."
reduce afs vnode lock contention, also implements async page requests
"(In afs_GetDCache, the hints in the vnode are only updated if we
can grab the write lock without blocking. In afs_GetOnePage, we
only grab the read lock, rather than the shared lock -- as far as
I can tell, there's nothing that needs the write lock.)
FWIW, the particular case where I was being bitten by this lock
contention was playing an mp3 from AFS space and at the same time
copying it to local disk. The copy kept fetching chunks while
holding the read lock, so the mp3 player couldn't grab a write
lock in the page fault, even though the data was already in cache.
While I'm not fully familiar with the semantics of afs vnode locks
[do they even exist? :-)], I believe changing from shared to read
locks in afs_GetOnePage should be safe."
note gi is useless for namei case
The AFS_64BIT_ENV define is needed for afsutil.h which makes use
of some 64-bit types (and if AFS_64BIT_ENV isn't set, defaults to
the non-existant u_int64_t).
- support for large caches in afsd. Cachefiles are stored in
subdirectories. The default is 2048 files per subdirectory, which
should work fine in most situations. You can use the new afsd
option -files_per_subdir to change this number. Note that the first
time you run afsd with this patch, your cachefiles will get moved
into subdirectories. If you subsequently run an older version of
afsd, you will lose all your cached files.
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
news entry for large cache patch
These patches solve the following problem:
During Un-Install of AFS for Windows, it removed the following key:
HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\NetBT\\Parameters
Instead it should have removed only the SMBDeviceEnable=0 item within
the above key.
This damaged the NetBT (NetBios over TCP/IP) interface, and required
re-installing of TCP/IP. The users found their ability to share files
and printers damaged.